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

من موسوعة حسوب
اذهب إلى التنقل اذهب إلى البحث
سطر 2: سطر 2:
 
[[تصنيف: Cordova]]
 
[[تصنيف: Cordova]]
 
[[تصنيف: CLI]]
 
[[تصنيف: CLI]]
== قرطبة سطر الأوامر واجهة (CLI) مرجع ==
+
قرطبة سطر الأوامر واجهة (CLI) مرجع
 
 
 
الصياغة  
 
الصياغة  
<syntaxhighlight lang="javascript">cordova <command> [options] -- [platformOpts]‎</syntaxhighlight>  
+
<syntaxhighlight lang="console">cordova <command> [options] -- [platformOpts]‎</syntaxhighlight>  
  
 
لائحة الأوامر العامة  
 
لائحة الأوامر العامة  
سطر 71: سطر 70:
  
 
يوضح هذا المثال كيف يمكن استخدام واجهة سطر أوامر كوردوفا لإنشاء مشروع مع الإضافة <code>camera</code> وتشغيله على منصة <code>android</code>. يمكنك تحديد خيارات مخصوصة بمنصة معينة مثل <code>--keystore</code>:  
 
يوضح هذا المثال كيف يمكن استخدام واجهة سطر أوامر كوردوفا لإنشاء مشروع مع الإضافة <code>camera</code> وتشغيله على منصة <code>android</code>. يمكنك تحديد خيارات مخصوصة بمنصة معينة مثل <code>--keystore</code>:  
<syntaxhighlight lang="javascript"># Create a cordova project
+
<syntaxhighlight lang="console"># Create a cordova project
 
cordova create myApp com.myCompany.myApp myApp
 
cordova create myApp com.myCompany.myApp myApp
 
cd myApp
 
cd myApp
سطر 94: سطر 93:
 
ينشئ هذا الأمر هيكل المجلد الخاص بمشروع كوردوفا في المسار المحدد.  
 
ينشئ هذا الأمر هيكل المجلد الخاص بمشروع كوردوفا في المسار المحدد.  
 
==الصياغة==  
 
==الصياغة==  
<syntaxhighlight lang="javascript">cordova create path [id [name [config]]] [options]‎</syntaxhighlight>  
+
<syntaxhighlight lang="console">cordova create path [id [name [config]]] [options]‎</syntaxhighlight>  
 
القيمة  
 
القيمة  
 
الوصف
 
الوصف
سطر 119: سطر 118:
  
 
تعمل واجهة سطر أوامر كوردوفا وفق بنية المجلد التالية:  
 
تعمل واجهة سطر أوامر كوردوفا وفق بنية المجلد التالية:  
<syntaxhighlight lang="javascript">myapp/
+
<syntaxhighlight lang="console">myapp/
 
|-- config.xml
 
|-- config.xml
 
|-- hooks/
 
|-- hooks/
سطر 153: سطر 152:
 
====merges/====  
 
====merges/====  
  
يتم تضمين أصول الويب الخاصة بالمنصة (ملفات HTML و CSS و[[JavaScript|جافااسكريبت]]) داخل المجلدات الفرعية المناسبة في هذا المجلد. يتم نشر هذه الملفات خلال الأمر <code>prepare</code> إلى المجلد الأصلي (native directory) المناسب. ستحل الملفات الموضوعة في المجلد <code>merges/</code> محل الملفات المطابقة في المجلد <code>www/</code> الخاص بالمنصة المعنية. مثال سريع، بافتراض هيكل المشروع التالي:  
+
يتم تضمين أصول الويب الخاصة بالمنصة (ملفات HTML و CSS و[[JavaScript|[[Java|جافا]]اسكريبت]]) داخل المجلدات الفرعية المناسبة في هذا المجلد. يتم نشر هذه الملفات خلال الأمر <code>prepare</code> إلى المجلد الأصلي (native directory) المناسب. ستحل الملفات الموضوعة في المجلد <code>merges/</code> محل الملفات المطابقة في المجلد <code>www/</code> الخاص بالمنصة المعنية. مثال سريع، بافتراض هيكل المشروع التالي:  
<syntaxhighlight lang="javascript">merges/
+
<syntaxhighlight lang="console">merges/
 
|-- ios/
 
|-- ios/
 
| -- app.js
 
| -- app.js
سطر 171: سطر 170:
  
 
إنشاء مشروع كوردوفا في المجلد <code>myapp</code> باستخدام المعرّف واسم العرض المحددين:  
 
إنشاء مشروع كوردوفا في المجلد <code>myapp</code> باستخدام المعرّف واسم العرض المحددين:  
<syntaxhighlight lang="javascript">cordova create myapp com.mycompany.myteam.myapp MyApp‎</syntaxhighlight>  
+
<syntaxhighlight lang="console">cordova create myapp com.mycompany.myteam.myapp MyApp‎</syntaxhighlight>  
 
*
 
*
  
 
إنشاء مشروع كوردوفا مع رابط رمزي (symlink) إلى مجلد <code>www</code> موجود. قد يكون هذا مفيدًا إن كنت تعتمد عملية بناء مخصصة، أو كانت لديك أصول تريد استخدامها في تطبيق كوردوفا الخاص بك:  
 
إنشاء مشروع كوردوفا مع رابط رمزي (symlink) إلى مجلد <code>www</code> موجود. قد يكون هذا مفيدًا إن كنت تعتمد عملية بناء مخصصة، أو كانت لديك أصول تريد استخدامها في تطبيق كوردوفا الخاص بك:  
<syntaxhighlight lang="javascript">cordova create myapp --link-to=../www‎</syntaxhighlight>  
+
<syntaxhighlight lang="console">cordova create myapp --link-to=../www‎</syntaxhighlight>  
  
 
الأمر platform command  
 
الأمر platform command  
سطر 182: سطر 181:
 
يدير هذا الأمر منصات كوردوفا - مما يسمح لك بإضافة التحديثات وإزالتها وتحديثها وإدراجها والتحقق منها. تنفيذ الأوامر التي تضيف أو تزيل المنصات يؤثر على محتويات مجلد المشروع.  
 
يدير هذا الأمر منصات كوردوفا - مما يسمح لك بإضافة التحديثات وإزالتها وتحديثها وإدراجها والتحقق منها. تنفيذ الأوامر التي تضيف أو تزيل المنصات يؤثر على محتويات مجلد المشروع.  
 
==الصياغة==  
 
==الصياغة==  
<syntaxhighlight lang="javascript">cordova {platform | platforms} [
+
<syntaxhighlight lang="console">cordova {platform | platforms} [
 
     add <platform-spec> [...] {--save | link=<path> } |
 
     add <platform-spec> [...] {--save | link=<path> } |
 
     {remove | rm}  platform [...] {--save}|
 
     {remove | rm}  platform [...] {--save}|
سطر 221: سطر 220:
  
 
هناك عدد من الطرق لتحديد المنصة:  
 
هناك عدد من الطرق لتحديد المنصة:  
<syntaxhighlight lang="javascript"><platform-spec> : platform[@version] | path | url[#commit-ish]‎</syntaxhighlight>  
+
<syntaxhighlight lang="console"><platform-spec> : platform[@version] | path | url[#commit-ish]‎</syntaxhighlight>  
 
القيمة  
 
القيمة  
 
الوصف
 
الوصف
سطر 250: سطر 249:
  
 
إضافة إصدار مثبت (pinned version) من المنصتين <code>android</code> و <code>ios</code> وحفظ الإصدار الذي تم تنزيله في الملفين <code>config.xml</code> و <code>package.json</code>:  
 
إضافة إصدار مثبت (pinned version) من المنصتين <code>android</code> و <code>ios</code> وحفظ الإصدار الذي تم تنزيله في الملفين <code>config.xml</code> و <code>package.json</code>:  
<syntaxhighlight lang="javascript">cordova platform add android ios‎</syntaxhighlight>  
+
<syntaxhighlight lang="console">cordova platform add android ios‎</syntaxhighlight>  
 
*
 
*
  
 
إضافة منصة <code>android</code> مع الإصدار [http://semver.org/ semver] ^ 5.0.0 وحفظه في الملفين <code>config.xml</code> و <code>package.json</code>:  
 
إضافة منصة <code>android</code> مع الإصدار [http://semver.org/ semver] ^ 5.0.0 وحفظه في الملفين <code>config.xml</code> و <code>package.json</code>:  
<syntaxhighlight lang="javascript">cordova platform add android@^5.0.0‎</syntaxhighlight>  
+
<syntaxhighlight lang="console">cordova platform add android@^5.0.0‎</syntaxhighlight>  
 
*
 
*
  
 
إضافة المنصة عن طريق استنساخ مستودع git المحدد مع إضافة الوسم <code>4.0.0</code>:  
 
إضافة المنصة عن طريق استنساخ مستودع git المحدد مع إضافة الوسم <code>4.0.0</code>:  
<syntaxhighlight lang="javascript">cordova platform add https://github.com/myfork/cordova-android.git#4.0.0‎</syntaxhighlight>  
+
<syntaxhighlight lang="console">cordova platform add https://github.com/myfork/cordova-android.git#4.0.0‎</syntaxhighlight>  
 
*
 
*
  
 
إضافة منصة باستخدام مجلد محلي باسم <code>android</code>:  
 
إضافة منصة باستخدام مجلد محلي باسم <code>android</code>:  
<syntaxhighlight lang="javascript">cordova platform add ../android‎</syntaxhighlight>  
+
<syntaxhighlight lang="console">cordova platform add ../android‎</syntaxhighlight>  
 
*
 
*
  
 
إضافة منصة باستخدام ملف tarball المحدد:  
 
إضافة منصة باستخدام ملف tarball المحدد:  
<syntaxhighlight lang="javascript">cordova platform add ../cordova-android.tgz‎</syntaxhighlight>  
+
<syntaxhighlight lang="console">cordova platform add ../cordova-android.tgz‎</syntaxhighlight>  
 
*
 
*
  
 
إزالة منصة <code>android</code> من المشروع ومن الملفين <code>config.xml</code> و <code>package.json</code>:  
 
إزالة منصة <code>android</code> من المشروع ومن الملفين <code>config.xml</code> و <code>package.json</code>:  
<syntaxhighlight lang="javascript">cordova platform rm android‎</syntaxhighlight>  
+
<syntaxhighlight lang="console">cordova platform rm android‎</syntaxhighlight>  
 
*
 
*
  
 
إزالة منصة <code>android</code> من المشروع دون إزالتها من الملفين <code>config.xml</code> و <code>package.json</code>:  
 
إزالة منصة <code>android</code> من المشروع دون إزالتها من الملفين <code>config.xml</code> و <code>package.json</code>:  
<syntaxhighlight lang="javascript">cordova platform rm android --nosave‎</syntaxhighlight>  
+
<syntaxhighlight lang="console">cordova platform rm android --nosave‎</syntaxhighlight>  
 
*
 
*
  
 
سرد قائمة من المنصات المتاحة والمثبتة مع أرقام إصداراتها. يفيد هذا في العثور على أرقام الإصدارات عند الإبلاغ عن المشاكل:  
 
سرد قائمة من المنصات المتاحة والمثبتة مع أرقام إصداراتها. يفيد هذا في العثور على أرقام الإصدارات عند الإبلاغ عن المشاكل:  
<syntaxhighlight lang="javascript">cordova platform ls‎</syntaxhighlight>  
+
<syntaxhighlight lang="console">cordova platform ls‎</syntaxhighlight>  
 
*
 
*
  
 
حفظ إصدارات من جميع المنصات المضافة حاليا إلى المشروع في الملفين <code>config.xml</code> و <code>package.json</code>  
 
حفظ إصدارات من جميع المنصات المضافة حاليا إلى المشروع في الملفين <code>config.xml</code> و <code>package.json</code>  
<syntaxhighlight lang="javascript">cordova platform save‎</syntaxhighlight>  
+
<syntaxhighlight lang="console">cordova platform save‎</syntaxhighlight>  
  
 
الأمر plugin  
 
الأمر plugin  
سطر 289: سطر 288:
 
يمكن هذا الأمر من إدارة إضافات المشروع  
 
يمكن هذا الأمر من إدارة إضافات المشروع  
 
==الصياغة==  
 
==الصياغة==  
<syntaxhighlight lang="javascript">cordova {plugin | plugins} [
+
<syntaxhighlight lang="console">cordova {plugin | plugins} [
 
     add <plugin-spec> [..] {--searchpath=<directory> | --noregistry | --link | --save | --browserify | --force} |
 
     add <plugin-spec> [..] {--searchpath=<directory> | --noregistry | --link | --save | --browserify | --force} |
 
     {remove | rm} {<pluginid> | <name>} --save |
 
     {remove | rm} {<pluginid> | <name>} --save |
سطر 311: سطر 310:
 
عدم حفظ <code><plugin-spec></code> كجزء من العنصر <code>plugin</code> في الملف <code>config.xml</code> أو <code>package.json</code>.  
 
عدم حفظ <code><plugin-spec></code> كجزء من العنصر <code>plugin</code> في الملف <code>config.xml</code> أو <code>package.json</code>.  
 
--browserify  
 
--browserify  
تصريف (Compile) إضافة [[JavaScript|جافااسكريبت]] في وقت البناء باستخدام browserify بدلا من runtime.  
+
تصريف (Compile) إضافة [[JavaScript|[[Java|جافا]]اسكريبت]] في وقت البناء باستخدام browserify بدلا من runtime.  
 
--force  
 
--force  
 
تم تقديمه في الإصدار 6.1. يفرض نسخ الملفات المصدرية من الإضافة حتى لو كان الملف نفسه موجودًا سلفًا في المجلد الهدف.  
 
تم تقديمه في الإصدار 6.1. يفرض نسخ الملفات المصدرية من الإضافة حتى لو كان الملف نفسه موجودًا سلفًا في المجلد الهدف.  
سطر 330: سطر 329:
  
 
هناك عدة طرق لتحديد الإضافة:  
 
هناك عدة طرق لتحديد الإضافة:  
<syntaxhighlight lang="javascript"><plugin-spec> : [@scope/]pluginID[@version]|directory|url[#commit-ish][:subdir]‎</syntaxhighlight>  
+
<syntaxhighlight lang="console"><plugin-spec> : [@scope/]pluginID[@version]|directory|url[#commit-ish][:subdir]‎</syntaxhighlight>  
 
القيمة  
 
القيمة  
 
الوصف
 
الوصف
سطر 356: سطر 355:
  
 
قم بإضافة <code>cordova-plugin-camera</code> و <code>cordova-plugin-file</code> إلى المشروع، واحفظه في الملفين <code>config.xml</code> و <code>package.json</code>. واستخدم المجلد <code>../plugins</code> للبحث عن الإضافات.  
 
قم بإضافة <code>cordova-plugin-camera</code> و <code>cordova-plugin-file</code> إلى المشروع، واحفظه في الملفين <code>config.xml</code> و <code>package.json</code>. واستخدم المجلد <code>../plugins</code> للبحث عن الإضافات.  
<syntaxhighlight lang="javascript">cordova plugin add cordova-plugin-camera cordova-plugin-file --save --searchpath ../plugins‎</syntaxhighlight>  
+
<syntaxhighlight lang="console">cordova plugin add cordova-plugin-camera cordova-plugin-file --save --searchpath ../plugins‎</syntaxhighlight>  
 
*
 
*
  
 
إضافة <code>cordova-plugin-camera</code> مع [http://semver.org/ semver] الإصدار ^ 2.0.0 وحفظه في <code>config.xml</code> و <code>package.json</code>:  
 
إضافة <code>cordova-plugin-camera</code> مع [http://semver.org/ semver] الإصدار ^ 2.0.0 وحفظه في <code>config.xml</code> و <code>package.json</code>:  
<syntaxhighlight lang="javascript">cordova plugin add cordova-plugin-camera@^2.0.0‎</syntaxhighlight>إضافة الإضافة من المجلد المحلي المحدد:<syntaxhighlight lang="javascript">cordova plugin add ../cordova-plugin-camera‎</syntaxhighlight>إضافة الإضافة من ملف tarball المحدد:  
+
<syntaxhighlight lang="console">cordova plugin add cordova-plugin-camera@^2.0.0‎</syntaxhighlight>  
<syntaxhighlight lang="javascript">cordova plugin add ../cordova-plugin-camera.tgz‎</syntaxhighlight>إزالة الإضافة من المشروع ومن الملفين <code>config.xml</code> و <code>package.json</code>:  
+
*
<syntaxhighlight lang="javascript">cordova plugin rm camera‎</syntaxhighlight>إزالة الإضافة من المشروع، دون إزالتها من الملفين <code>config.xml</code> أو <code>package.json</code>:  
+
 
<syntaxhighlight lang="javascript">cordova plugin rm camera --nosave‎</syntaxhighlight>إدارج قائمة من جميع الإضافات المثبتة في المشروع:  
+
إضافة الإضافة من المجلد المحلي المحدد:  
<syntaxhighlight lang="javascript">cordova plugin ls‎</syntaxhighlight>  
+
<syntaxhighlight lang="console">cordova plugin add ../cordova-plugin-camera‎</syntaxhighlight>  
 +
*
 +
 
 +
إضافة الإضافة من ملف tarball المحدد:  
 +
<syntaxhighlight lang="console">cordova plugin add ../cordova-plugin-camera.tgz‎</syntaxhighlight>  
 +
*
 +
 
 +
إزالة الإضافة من المشروع ومن الملفين <code>config.xml</code> و <code>package.json</code>:  
 +
<syntaxhighlight lang="console">cordova plugin rm camera‎</syntaxhighlight>  
 +
*
 +
 
 +
إزالة الإضافة من المشروع، دون إزالتها من الملفين <code>config.xml</code> أو <code>package.json</code>:  
 +
<syntaxhighlight lang="console">cordova plugin rm camera --nosave‎</syntaxhighlight>  
 +
*
 +
 
 +
إدارج قائمة من جميع الإضافات المثبتة في المشروع:  
 +
<syntaxhighlight lang="console">cordova plugin ls‎</syntaxhighlight>  
 
== الإضافات المُتعارضة (Conflicting plugins) ==  
 
== الإضافات المُتعارضة (Conflicting plugins) ==  
  
سطر 378: سطر 393:
 
يحوِّل هذا الأمر البيانات الوصفية في الملف config.xml إلى ملفات بيانية (manifest files) مخصوصة بالمنصات، وينسخ الأيقونات وشاشات البداية (splashscreens)، وينسخ ملفات الإضافات الخاصة بمنصات محددة بحيث يكون المشروع جاهزًا للبناء بواسطة بيئة العمل الأصلية SDK.  
 
يحوِّل هذا الأمر البيانات الوصفية في الملف config.xml إلى ملفات بيانية (manifest files) مخصوصة بالمنصات، وينسخ الأيقونات وشاشات البداية (splashscreens)، وينسخ ملفات الإضافات الخاصة بمنصات محددة بحيث يكون المشروع جاهزًا للبناء بواسطة بيئة العمل الأصلية SDK.  
 
==الصياغة==  
 
==الصياغة==  
<syntaxhighlight lang="javascript">cordova prepare [<platform> [..]]
+
<syntaxhighlight lang="console">cordova prepare [<platform> [..]]
 
     [--browserify]‎</syntaxhighlight>  
 
     [--browserify]‎</syntaxhighlight>  
 
==خيارات==  
 
==خيارات==  
سطر 386: سطر 401:
 
اسم (أسماء) المنصة المراد تحضيرها. في حال عدم تحديده، فستُبنى جميع المنصات.  
 
اسم (أسماء) المنصة المراد تحضيرها. في حال عدم تحديده، فستُبنى جميع المنصات.  
 
--browserify  
 
--browserify  
تصريف (Compile) ملفات [[JavaScript|جافااسكريبت]] الخاصة بالإضافة في وقت البناء باستخدام browserify بدلا من runtime.  
+
تصريف (Compile) ملفات [[JavaScript|[[Java|جافا]]اسكريبت]] الخاصة بالإضافة في وقت البناء باستخدام browserify بدلا من runtime.  
  
 
الأمر كوردوفا compile  
 
الأمر كوردوفا compile  
سطر 393: سطر 408:
 
الأمر <code>cordova compile</code> هو جزء من [#cordova-build-command cordova build command]. إن أنه يكتفي بتنفيذ خطوة التصريف (compilation)، لكن دون القيام بالتحضير. من الشائع استدعاء <code>cordova build</code> بدلاً من هذا الأمر - لكن هذه المرحلة مفيدة للسماح بالتمديد باستخدام [http://cordova.apache.org/docs/en/latest/guide_appdev_hooks_index.md.html hooks].  
 
الأمر <code>cordova compile</code> هو جزء من [#cordova-build-command cordova build command]. إن أنه يكتفي بتنفيذ خطوة التصريف (compilation)، لكن دون القيام بالتحضير. من الشائع استدعاء <code>cordova build</code> بدلاً من هذا الأمر - لكن هذه المرحلة مفيدة للسماح بالتمديد باستخدام [http://cordova.apache.org/docs/en/latest/guide_appdev_hooks_index.md.html hooks].  
 
==الصياغة==  
 
==الصياغة==  
<syntaxhighlight lang="javascript">cordova build [<platform> [...]]
+
<syntaxhighlight lang="console">cordova build [<platform> [...]]
 
     [--debug|--release]
 
     [--debug|--release]
 
     [--device|--emulator|--target=<targetName>]
 
     [--device|--emulator|--target=<targetName>]
سطر 407: سطر 422:
 
هذا الأمر هو اختصار لـ <code>cordova prepare</code> + <code>cordova compile</code> لجميع المنصات المحددة. يسمح لك ببناء التطبيق لأجل المنصة المحددة.  
 
هذا الأمر هو اختصار لـ <code>cordova prepare</code> + <code>cordova compile</code> لجميع المنصات المحددة. يسمح لك ببناء التطبيق لأجل المنصة المحددة.  
 
==الصياغة==  
 
==الصياغة==  
<syntaxhighlight lang="javascript">cordova build [<platform> [...]]
+
<syntaxhighlight lang="console">cordova build [<platform> [...]]
 
     [--debug|--release]
 
     [--debug|--release]
 
     [--device|--emulator]
 
     [--device|--emulator]
سطر 429: سطر 444:
 
استخدام ملف الإعداد المحدد لأجل البناء. يستخدم الملف <code>build.json</code> لتحديد المعاملات لتخصيص عملية بناء التطبيق، خاصة فيما يتعلق بتوقيع (signing) الحزمة.  
 
استخدام ملف الإعداد المحدد لأجل البناء. يستخدم الملف <code>build.json</code> لتحديد المعاملات لتخصيص عملية بناء التطبيق، خاصة فيما يتعلق بتوقيع (signing) الحزمة.  
 
‎--browserify  
 
‎--browserify  
تصريف (Compile) إضافة [[JavaScript|جافااسكريبت]] في وقت البناء باستخدام browserify بدلا من runtime.  
+
تصريف (Compile) إضافة [[JavaScript|[[Java|جافا]]اسكريبت]] في وقت البناء باستخدام browserify بدلا من runtime.  
 
<code><platformOpts></code>  
 
<code><platformOpts></code>  
 
لتوفير خيارات مخصوصة بمنصة معينة، فيجب عليك إدارجها بعد الفاصل <code>--</code>. راجع مستندات دليل المنصة لمزيد من التفاصيل.  
 
لتوفير خيارات مخصوصة بمنصة معينة، فيجب عليك إدارجها بعد الفاصل <code>--</code>. راجع مستندات دليل المنصة لمزيد من التفاصيل.  
سطر 436: سطر 451:
  
 
البناء لمنصتي <code>android</code> و <code>windows</code> في الوضع <code>debug</code> للنشر على الجهاز:  
 
البناء لمنصتي <code>android</code> و <code>windows</code> في الوضع <code>debug</code> للنشر على الجهاز:  
<syntaxhighlight lang="javascript">cordova build android windows --debug --device‎</syntaxhighlight>البناء من أجل المنصة <code>android</code> في الوضع <code>release</code> مع استخدام إعدادات البناء المحددة:  
+
<syntaxhighlight lang="console">cordova build android windows --debug --device‎</syntaxhighlight>  
<syntaxhighlight lang="javascript">cordova build android --release --buildConfig=..\myBuildConfig.json‎</syntaxhighlight>البناء للمنصة <code>android</code> في وضع الإطلاق (release)، مع تمرير خيارات مخصوصة بالمنصة أندرويد لأجل عملية البناء:  
+
*
<syntaxhighlight lang="javascript">cordova build android --release -- --keystore="..\android.keystore" --storePassword=android --alias=mykey‎</syntaxhighlight>  
+
 
 +
البناء من أجل المنصة <code>android</code> في الوضع <code>release</code> مع استخدام إعدادات البناء المحددة:  
 +
<syntaxhighlight lang="console">cordova build android --release --buildConfig=..\myBuildConfig.json‎</syntaxhighlight>  
 +
*
 +
 
 +
البناء للمنصة <code>android</code> في وضع الإطلاق (release)، مع تمرير خيارات مخصوصة بالمنصة أندرويد لأجل عملية البناء:  
 +
<syntaxhighlight lang="console">cordova build android --release -- --keystore="..\android.keystore" --storePassword=android --alias=mykey‎</syntaxhighlight>  
  
 
الأمر كوردوفا run  
 
الأمر كوردوفا run  
سطر 445: سطر 466:
 
يقوم هذا الأمر بتحضير، وبناء ونشر التطبيق على أجهزة أو محاكيات خاصة بمنصات محددة. إذا كان هناك جهاز متصل، فسيُستخدم، ما لم يكن هناك محاكٍ مؤهل يعمل بالفعل.  
 
يقوم هذا الأمر بتحضير، وبناء ونشر التطبيق على أجهزة أو محاكيات خاصة بمنصات محددة. إذا كان هناك جهاز متصل، فسيُستخدم، ما لم يكن هناك محاكٍ مؤهل يعمل بالفعل.  
 
==الصياغة==  
 
==الصياغة==  
<syntaxhighlight lang="javascript">cordova run [<platform> [...]]
+
<syntaxhighlight lang="console">cordova run [<platform> [...]]
 
     [--list | --debug | --release]
 
     [--list | --debug | --release]
 
     [--noprepare] [--nobuild]
 
     [--noprepare] [--nobuild]
سطر 476: سطر 497:
 
استخدام ملف الإعداد المحدد في البناء. يُستخدم ملف <code>build.json</code> لتحديد الوسائط لتخصيص عملية بناء التطبيق، خاصة فيما يتعلق بتوقيع (signing) الحزمة.  
 
استخدام ملف الإعداد المحدد في البناء. يُستخدم ملف <code>build.json</code> لتحديد الوسائط لتخصيص عملية بناء التطبيق، خاصة فيما يتعلق بتوقيع (signing) الحزمة.  
 
‎--browserify  
 
‎--browserify  
تصريف (Compile) إضافة [[JavaScript|جافااسكريبت]] في وقت البناء باستخدام browserify بدلا من runtime.  
+
تصريف (Compile) إضافة [[JavaScript|[[Java|جافا]]اسكريبت]] في وقت البناء باستخدام browserify بدلا من runtime.  
 
<code><platformOpts></code>  
 
<code><platformOpts></code>  
 
لتوفير خيارات مخصوصة بمنصة محددة، فيجب عليك إدارجها بعد الفاصل <code>--</code>. راجع مستندات دليل المنصة لمزيد من التفاصيل.  
 
لتوفير خيارات مخصوصة بمنصة محددة، فيجب عليك إدارجها بعد الفاصل <code>--</code>. راجع مستندات دليل المنصة لمزيد من التفاصيل.  
سطر 483: سطر 504:
  
 
تشغيل عملية بناء للإطلاق (release build) لمشروع كوردوفا الحالي على محاكي المنصة <code>android</code> المسمى <code>Nexus_5_API_23_x86</code>. مع استخدم إعدادات البناء المحددة عند التشغيل:  
 
تشغيل عملية بناء للإطلاق (release build) لمشروع كوردوفا الحالي على محاكي المنصة <code>android</code> المسمى <code>Nexus_5_API_23_x86</code>. مع استخدم إعدادات البناء المحددة عند التشغيل:  
<syntaxhighlight lang="javascript">cordova run android --release --buildConfig=..\myBuildConfig.json --target=Nexus_5_API_23_x86‎</syntaxhighlight>  
+
<syntaxhighlight lang="console">cordova run android --release --buildConfig=..\myBuildConfig.json --target=Nexus_5_API_23_x86‎</syntaxhighlight>  
 
*
 
*
  
 
تشغيل عملية بناء مُصححة (debug build) لمشروع كوردوفا الحالي على المنصة <code>android</code> باستخدام جهازٍ أو محاكٍ (في حال عدم وجود جهاز متصل). مع تخطي مرحلة البناء:  
 
تشغيل عملية بناء مُصححة (debug build) لمشروع كوردوفا الحالي على المنصة <code>android</code> باستخدام جهازٍ أو محاكٍ (في حال عدم وجود جهاز متصل). مع تخطي مرحلة البناء:  
<syntaxhighlight lang="javascript">cordova run android --nobuild‎</syntaxhighlight>  
+
<syntaxhighlight lang="console">cordova run android --nobuild‎</syntaxhighlight>  
 
*
 
*
  
 
تشغيل بناء مصحح لمشروع كوردوفا الحالي على جهاز <code>ios</code>:  
 
تشغيل بناء مصحح لمشروع كوردوفا الحالي على جهاز <code>ios</code>:  
<syntaxhighlight lang="javascript">cordova run ios --device‎</syntaxhighlight>  
+
<syntaxhighlight lang="console">cordova run ios --device‎</syntaxhighlight>  
 
*
 
*
  
 
تعداد أسماء جميع الأجهزة المتصلة والمحاكيت المتاحة التي يمكن استخدامها لتشغيل هذا التطبيق:  
 
تعداد أسماء جميع الأجهزة المتصلة والمحاكيت المتاحة التي يمكن استخدامها لتشغيل هذا التطبيق:  
<syntaxhighlight lang="javascript">cordova run ios --list‎</syntaxhighlight>  
+
<syntaxhighlight lang="console">cordova run ios --list‎</syntaxhighlight>  
  
 
الأمر cordova emulate  
 
الأمر cordova emulate  
سطر 507: سطر 528:
 
ينظف مخلفات (artifacts) البناء الخاصة بجميع المنصات، أو الخاصة بالمنصة المحددة عن طريق تشغيل عملية تنظيف البناء خاصة بالمنصة.  
 
ينظف مخلفات (artifacts) البناء الخاصة بجميع المنصات، أو الخاصة بالمنصة المحددة عن طريق تشغيل عملية تنظيف البناء خاصة بالمنصة.  
 
==الصياغة==  
 
==الصياغة==  
<syntaxhighlight lang="javascript">cordova clean [<platform> [...]]‎</syntaxhighlight>  
+
<syntaxhighlight lang="console">cordova clean [<platform> [...]]‎</syntaxhighlight>  
 
== مثال ==  
 
== مثال ==  
 
*
 
*
  
 
تنظيف مخلفات البناء الخاصة بالمنصة <code>android</code>:  
 
تنظيف مخلفات البناء الخاصة بالمنصة <code>android</code>:  
<syntaxhighlight lang="javascript">cordova clean android‎</syntaxhighlight>  
+
<syntaxhighlight lang="console">cordova clean android‎</syntaxhighlight>  
  
 
الأمر cordova requirements  
 
الأمر cordova requirements  
سطر 521: سطر 542:
 
يمكن أن يكون ذلك مفيدًا عند إعداد جهاز لبناء منصة معينة.  
 
يمكن أن يكون ذلك مفيدًا عند إعداد جهاز لبناء منصة معينة.  
 
==الصياغة==  
 
==الصياغة==  
<syntaxhighlight lang="javascript">cordova requirements android‎</syntaxhighlight>  
+
<syntaxhighlight lang="console">cordova requirements android‎</syntaxhighlight>  
  
 
الأمر cordova info  
 
الأمر cordova info  
سطر 528: سطر 549:
 
يطبع هذا الأمر معلومات مفيدة لتقديم تقارير الأخطاء والحصول على المساعدة. إذ ينشئ ملفًا info.txt في قاعدة المشروع.  
 
يطبع هذا الأمر معلومات مفيدة لتقديم تقارير الأخطاء والحصول على المساعدة. إذ ينشئ ملفًا info.txt في قاعدة المشروع.  
 
==الصياغة==  
 
==الصياغة==  
<syntaxhighlight lang="javascript">cordova info‎</syntaxhighlight>  
+
<syntaxhighlight lang="console">cordova info‎</syntaxhighlight>  
  
 
الأمر cordova serve  
 
الأمر cordova serve  
سطر 535: سطر 556:
 
يشغل هذا الأمر خادمًا محليًا من المجلد www/assets باستخدام المنفذ <code>port</code> المحدد، أو المنفذ الافتراضي ذو القيمة 8000. يمكن الدخول إلى المشاريع من العنوان: <code>http://HOST_IP:PORT/PLATFORM/www</code>  
 
يشغل هذا الأمر خادمًا محليًا من المجلد www/assets باستخدام المنفذ <code>port</code> المحدد، أو المنفذ الافتراضي ذو القيمة 8000. يمكن الدخول إلى المشاريع من العنوان: <code>http://HOST_IP:PORT/PLATFORM/www</code>  
 
==الصياغة==  
 
==الصياغة==  
<syntaxhighlight lang="javascript">cordova serve [port]‎</syntaxhighlight>  
+
<syntaxhighlight lang="console">cordova serve [port]‎</syntaxhighlight>  
  
 
الأمر cordova telemetry  
 
الأمر cordova telemetry  
سطر 542: سطر 563:
 
هذا الأمر يُستخدم لتعطيل أو تمكين مجموعة القياس عن بُعد (telemetry collection).  
 
هذا الأمر يُستخدم لتعطيل أو تمكين مجموعة القياس عن بُعد (telemetry collection).  
 
==الصياغة==  
 
==الصياغة==  
<syntaxhighlight lang="javascript">cordova telemetry [STATE]‎</syntaxhighlight>  
+
<syntaxhighlight lang="console">cordova telemetry [STATE]‎</syntaxhighlight>  
 
الخيار  
 
الخيار  
 
الوصف
 
الوصف
سطر 553: سطر 574:
 
يتم عرض محث (prompt) موقوت يطلب من المستخدم الاشتراك أو الخروج في المرة الأولى التي يتم فيها تشغيل كوردوفا. ويستمر لمدة 30 ثانية، وبعد ذلك يتم إلغاء اشتراك المستخدم تلقائيًا إذا لم يقدم أي إجابة. في بيئات CI (التكامل المستمر continuous integration)، يمكن ضبط متغير البيئة <code>CI</code>، والذي سيمنع المحث من الظهور. يمكن أيضًا إيقاف تشغيل مجموعة القياس عن بُعد باستخدام أمر واحد عبر الراية <code>--no-telemetry</code>.  
 
يتم عرض محث (prompt) موقوت يطلب من المستخدم الاشتراك أو الخروج في المرة الأولى التي يتم فيها تشغيل كوردوفا. ويستمر لمدة 30 ثانية، وبعد ذلك يتم إلغاء اشتراك المستخدم تلقائيًا إذا لم يقدم أي إجابة. في بيئات CI (التكامل المستمر continuous integration)، يمكن ضبط متغير البيئة <code>CI</code>، والذي سيمنع المحث من الظهور. يمكن أيضًا إيقاف تشغيل مجموعة القياس عن بُعد باستخدام أمر واحد عبر الراية <code>--no-telemetry</code>.  
 
==أمثلة==  
 
==أمثلة==  
<syntaxhighlight lang="javascript">cordova telemetry on
+
<syntaxhighlight lang="console">cordova telemetry on
 
cordova telemetry off
 
cordova telemetry off
 
cordova build --no-telemetry‎</syntaxhighlight>  
 
cordova build --no-telemetry‎</syntaxhighlight>  
سطر 564: سطر 585:
 
يظهر هذا الأمر ملخص الصياغة، أو يساعد لفهم أمر محدد.  
 
يظهر هذا الأمر ملخص الصياغة، أو يساعد لفهم أمر محدد.  
 
==الصياغة==  
 
==الصياغة==  
<syntaxhighlight lang="javascript">cordova help [command]
+
<syntaxhighlight lang="console">cordova help [command]
 
cordova [command] -h
 
cordova [command] -h
 
cordova -h [command]‎</syntaxhighlight>  
 
cordova -h [command]‎</syntaxhighlight>  
سطر 573: سطر 594:
 
هذا الأمر يعين، و يحصّل، ويحذف، و يعدل ويُدرج قائمة خيارات كوردوفا العامة  
 
هذا الأمر يعين، و يحصّل، ويحذف، و يعدل ويُدرج قائمة خيارات كوردوفا العامة  
 
==الصياغة==  
 
==الصياغة==  
<syntaxhighlight lang="javascript">cordova config ls
+
<syntaxhighlight lang="console">cordova config ls
 
cordova config edit
 
cordova config edit
 
cordova config set <key> <value>
 
cordova config set <key> <value>
سطر 579: سطر 600:
 
cordova config delete <key>‎</syntaxhighlight>  
 
cordova config delete <key>‎</syntaxhighlight>  
 
==أمثلة==  
 
==أمثلة==  
<syntaxhighlight lang="javascript">cordova config set autosave false
+
<syntaxhighlight lang="console">cordova config set autosave false
 
cordova config set browserify false‎</syntaxhighlight>
 
cordova config set browserify false‎</syntaxhighlight>
 
==مصادر==
 
==مصادر==
 
*[https://cordova.apache.org/docs/en/latest/reference/cordova-cli/index.html صفحة Cordova Command-line-interface (CLI) Reference في توثيق كوردوفا الرسمي.]
 
*[https://cordova.apache.org/docs/en/latest/reference/cordova-cli/index.html صفحة Cordova Command-line-interface (CLI) Reference في توثيق كوردوفا الرسمي.]

مراجعة 16:32، 7 ديسمبر 2018

قرطبة سطر الأوامر واجهة (CLI) مرجع الصياغة

cordova <command> [options] -- [platformOpts]‎

لائحة الأوامر العامة

هذه الأوامر متوفرة في جميع الأوقات. الأمر الوصف create انشاء مشروع help الحصول على مساعدة بخصوص الأمر telemetry تفعيل مجموعة القياس (telemetry collection) أو إيقافها config تعيين، و تحصيل، و حذف، و تعديل وسرد قائمة خيارات كوردوفا العامة

لائحة أوامر المشروع

هذه الأوامر مدعومة عندما يكون مجلد العمل الحالي عبارة عن مشروع صالح لكوردوفا. الأمر الوصف info يولد هذا الأمر معلومات عن المشروع requirements يتحقق من ويطبع جميع متطلبات التثبيت للمنصات المحددة platform إدارة منصات المشاريع plugin إدارة إضافات المشروع إعداد نسخ الملفات في المنصة (أو المنصات) لأجل البناء compile بناء المنصة (ات) clean تنظيف مشروع من آثار البناء run تشغيل المشروع (بما في ذلك prepare && compile) serve تشغيل المشروع مع خادم ويب محلي (بما في ذلك prepare)

خيارات شائعة

تنطبق هذه الخيارات على جميع أوامر واجهة سطر الأوامر في كردوفا. الخيارات الوصف ‎-d أو‎ --verbose تقوم بإخراج معلومات أكثر إلى الصدفة (shell). يمكنك أيضًا الاشتراك في الحدثين log و warn إذا كنت تستخدم cordova-cli كوحدة عقدية (node module) عبر استدعاء cordova.on('log', function() {}) أو cordova.on('warn', function() {}). -v أو - الإصدار طباعة إصدار cordova-cli المثبت. --no-update-notifier سوف يعطل هذا الخيار التحقق من التحديثات. يمكنك بدلاً من ذلك، تعيين "optOut": true في الملف ~/.config/configstore/update-notifier-cordova.json أو تعيين متغير البيئة NO_UPDATE_NOTIFIER عند أي قيمة (انظر التفاصيل في update-notifier docs). --nohooks منع تنفيذ الخطافات (مع استخدام التعبير النمطي RegExp الخاص بالخُطاف كمعامل) --no-telemetry تعطيل مجموعة القياس عن بُعد (telemetry collection) الخاصة بلأمر الحالي.

خيارات مخصوصة بالمنصات

بعض الأوامر لها خيارات (platformOpts) مخصوصة بمنصة معينة. يمكن استخدامها في واجهة سطر الأوامر في كوردوفا مع الفاصل "--"، والذي يوقف تحليل (parsing) الأمر في الوحدة cordova-lib ويُمرر باقي الخيارات للمنصات لأجل تحليلهاا.


أمثلة:

يوضح هذا المثال كيف يمكن استخدام واجهة سطر أوامر كوردوفا لإنشاء مشروع مع الإضافة camera وتشغيله على منصة android. يمكنك تحديد خيارات مخصوصة بمنصة معينة مثل --keystore:

# Create a cordova project
cordova create myApp com.myCompany.myApp myApp
cd myApp
# Add camera plugin to the project and remember that in config.xml & package.json.
cordova plugin add cordova-plugin-camera
# Add camera plugin to the project and remember that in config.xml and package.json. 
cordova plugin add cordova-plugin-camera
# Add android platform to the project and remember that in config.xml & package.json.
cordova platform add android
# Check to see if your system is configured for building android platform.
cordova requirements android
# Build the android and emit verbose logs.
cordova build android --verbose
# Run the project on the android platform.
cordova run android
# Build for android platform in release mode with specified signing parameters.
cordova build android --release -- --keystore="..\android.keystore" --storePassword=android --alias=mykey‎

الأمر كوردوفا create

ملخص

ينشئ هذا الأمر هيكل المجلد الخاص بمشروع كوردوفا في المسار المحدد.

الصياغة

cordova create path [id [name [config]]] [options]‎

القيمة الوصف path نحدد هذه الخاصية مجلدًا، والذي يجب ألا يكون موجودًا سلفًا. سوف تنشئ إنشاء هذا المجلد. لمزيد من التفاصيل حول بنية المجلد، انظر أدناه. id القيمة الافتراضية: io.cordova.hellocordova

مُعرِّف لنمط النطاق العكسي (Reverse domain-style) الذي يشير إلى الخاصية id في العنصر widget في المف config.xml. يمكن تغيير هذه القيمة، ولكن قد تولّد بعض الشيفرات البرمجية باستخدام هذه القيمة، مثل أسماء حزم جافا. يوصى بتحديد قيمة مناسبة. 

name القيمة الافتراضية: HelloCordova عنوان العرض الخاص بالتطبيق، والذي يرتبط بالعنصر name في الملف config.xml. يمكن تغيير هذا ولكن قد تُولد بعض الشيفرات البرمجية باستخدام هذه القيمة، مثل أسماء أصناف جافا. القيمة الافتراضية هي HelloCordova، ولكن يوصى بتحديد قيمة مناسبة. config سلسلة نصية وفق صيغة JSON، والتي ستُدرج الأزواج مفتاح/قيمة الخاصة بها في <path> / .cordova / config.json

خيارات

الخيار الوصف ‎--template استخدام قالب مخصصٍ موجود محلي أو في مُدير الحُزم NPM، أو في مستودع GitHub. ‎--copy-from\‎ --src ‎--link-to رابط رمزي (Symlink) يشير إلى المجلد www المحدد دون إنشاء نسخة منه.

بنية المجلد

تعمل واجهة سطر أوامر كوردوفا وفق بنية المجلد التالية:

myapp/
|-- config.xml
|-- hooks/
|-- merges/
| | |-- android/
| | |-- windows/
| | |-- ios/
|-- www/
|-- platforms/
| |-- android/
| |-- windows/
| |-- ios/
|-- plugins/
  |--cordova-plugin-camera/‎

الملف Config.xml

يحتوي هذا الملف إعدادات تطبيقك، ويسمح لك بتخصيص سلوك مشروعك. انظر أيضا صفحة config.xml reference documentation.

www/

يحتوي على عناصر الويب (web artifacts) الخاصة بالمشروع، مثل ملفات html. و cs. و js. كمطور لتطبيقات كوردوفا، فإن معظم الشيفرات البرمجية والأصول الخاصة بك ستوضع هنا. سيتم نسخها عبر الأمر cordova prepare إلى المجلد www الخاص بكل منصة على حدة. يعاد إنتاج المجلد المصدري www داخل المجلد الفرعي لكل منصة، على سبيل المثال في platforms/ios/www أو platforms/android/assets/www. نظرًا لكون واجهة سطر الأوامر تنسخ الملفات باستمرار من المجلد المصدري www، فينبغي ألا تعدل إلا هذه الملفات، وليس الملفات الموجودة في المجلدات الفرعية للمنصات. إذا كنت تستخدم برنامجًا لإدارة الإصدارات، فعليط إضافة المجلد المصدري www، جنبًا إلى جنب مع المجلد المُدمج (merges folder)، في نظام إدارة الإصدارات.

platforms/

يحتوي هذ المجلد على كافة الشيفرات المصدرية والبرامج النصية المبنية build scripts) للمنصات التي تضيفها إلى مشروعك. WARNING: عند استخدام واجهة سطر الأوامر لبناء تطبيقك، فعليط ألا تعدّل أي ملفات في المجلد / platform /، إلا إن كنت تعرف ما تفعله، أو إذا كان التوثيق لا يمنع ذلك. يُكتب فوق الملفات الموجودة في هذا المجلد بشكل روتيني عند إعداد التطبيقات لأجل بنائها، أو عند إعادة تثبيت الإضافات.

plugins/

الإضافات التي أُضيفت ستُسختلص أو تُتسخ في هذا المجلد.

hooks/

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

راجع الصفحة Hooks Guide لمزيد من المعلومات.

merges/

يتم تضمين أصول الويب الخاصة بالمنصة (ملفات HTML و CSS و[[JavaScript|جافااسكريبت]]) داخل المجلدات الفرعية المناسبة في هذا المجلد. يتم نشر هذه الملفات خلال الأمر prepare إلى المجلد الأصلي (native directory) المناسب. ستحل الملفات الموضوعة في المجلد merges/ محل الملفات المطابقة في المجلد www/ الخاص بالمنصة المعنية. مثال سريع، بافتراض هيكل المشروع التالي:

merges/
|-- ios/
| -- app.js
|-- android/
| -- android.js
www/
-- app.js‎

بعد بناء مشروعي أندرويد و iOS، سيحتوي تطبيق أندرويد على الملفين app.js و android.js. أما تطبيق iOS فبم يحتوي إلا الملف app.js، الموجود في المسار merges/ios/app.js، وسيتجاوز الملف app.js الموجود في المجلد www/.

إداة الإصدارات

من المستحسن عدم إدراج المجلدين platforms/ و plugins/ في المجلدات التي يتحقق منها مدير الإصدارات، إذ أنها تحتوي عناصر وملفات بناء المشروع. ستُحفظ االمنصة والإضافة خاصتك في الملفين config.xml و package.json تلقائيًا. وسيتم تنزيلها عند تنفيذ الأمر cordova prepare.

أمثلة

إنشاء مشروع كوردوفا في المجلد myapp باستخدام المعرّف واسم العرض المحددين:

cordova create myapp com.mycompany.myteam.myapp MyApp‎

إنشاء مشروع كوردوفا مع رابط رمزي (symlink) إلى مجلد www موجود. قد يكون هذا مفيدًا إن كنت تعتمد عملية بناء مخصصة، أو كانت لديك أصول تريد استخدامها في تطبيق كوردوفا الخاص بك:

cordova create myapp --link-to=../www‎

الأمر platform command

ملخص

يدير هذا الأمر منصات كوردوفا - مما يسمح لك بإضافة التحديثات وإزالتها وتحديثها وإدراجها والتحقق منها. تنفيذ الأوامر التي تضيف أو تزيل المنصات يؤثر على محتويات مجلد المشروع.

الصياغة

cordova {platform | platforms} [
    add <platform-spec> [...] {--save | link=<path> } |
    {remove | rm}  platform [...] {--save}|
    {list | ls}  |
    check |
    save |
    update ]‎

أوامر فرعية الخيار الوصف add <platform-spec> [...]

إضافة منصات محددة --nosave عدم حفظ <platform-spec> في الملفين config.xml و package.json بعد تثبيتها باستخدام الوسم <engine> --link=<path> عندما يكون <platform-spec> عبارة مسارًا محليًا، فسينشئ هذا الأمر رابطًا لمكتبة المنصة مباشرةً بدلاً من إنشاء نسخة منها (يختلف الدعم بحسب المنصات، كما أنه مفيد في تطوير المنصة) remove <platform> [...]

إزالة المنصات المحددة --nosave عدم حذف المنصات المحددة من الملفين config.xml و package.json بعد إزالتها update platform [...]

تحديث المنصات المحددة --save تحديث الإصدار المحدد في الملف config.xml list

سرد جميع المنصات المثبتة والمتاحة في لائحة. check

يدرج هذا الأمر في قائمة المنصات التي يمكن تحديثها عن طريق واجهة سطر الأوامر عبر الأمر platform update save

حفظ العنصر <platform-spec> الخاص بجميع المنصات المضافة إلى الملف config.xml

تحديد المنصات (Platform-spec)

هناك عدد من الطرق لتحديد المنصة:

<platform-spec> : platform[@version] | path | url[#commit-ish]‎

القيمة الوصف platform اسم المنصة، على سبيل المثال، android، و ios، وwindows إلخ. والتي يمكن إضافتها إلى المشروع. في كل نسخة جديدة من واجهة سطر أوامر كوردوفا يتم تسجيل إصدار لكل منصة. عند عدم تحديد الإصدار، سيتم استخدام هذا الإصدار لإضافة المنصة. version مُحدِّد إصدار على هيئة رئيسي.فرعي.رقعة (Major.minor.patch) باستخدام semver path المسار إلى المجلد أو الملف tarball الذي يحتوي على المنصة url عنوان لمستودع git أو لملف tarball الذي يحتوي على منصة commit-ish المرجع إلزام/وسم/فرع (Commit/tag/branch). إذا لم يتم تحديد أي قيمة، فسيتم استخدام "master"

المنصات المدعومة

  • أندرويد
  • iOS
  • Windows (8.1، Phone 8.1، UWP - Windows 10)
  • Blackberry10
  • أوبونتو

Browser

المنصات الموقوفة

  • Amazon-fireos (استخدم منصة أندرويد بدلاً منه)
  • WP8 (استخدم ويندوز بدلاً منه)
  • Windows 8.0 (استخدم الإصدارات القديمة من كوردوفا)
  • نظام تشغيل Firefox (استخدام الإصدارات القديمة من كوردوفا)

أمثلة:

إضافة إصدار مثبت (pinned version) من المنصتين android و ios وحفظ الإصدار الذي تم تنزيله في الملفين config.xml و package.json:

cordova platform add android ios‎

إضافة منصة android مع الإصدار semver ^ 5.0.0 وحفظه في الملفين config.xml و package.json:

cordova platform add android@^5.0.0‎

إضافة المنصة عن طريق استنساخ مستودع git المحدد مع إضافة الوسم 4.0.0:

cordova platform add https://github.com/myfork/cordova-android.git#4.0.0‎

إضافة منصة باستخدام مجلد محلي باسم android:

cordova platform add ../android‎

إضافة منصة باستخدام ملف tarball المحدد:

cordova platform add ../cordova-android.tgz‎

إزالة منصة android من المشروع ومن الملفين config.xml و package.json:

cordova platform rm android‎

إزالة منصة android من المشروع دون إزالتها من الملفين config.xml و package.json:

cordova platform rm android --nosave‎

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

cordova platform ls‎

حفظ إصدارات من جميع المنصات المضافة حاليا إلى المشروع في الملفين config.xml و package.json

cordova platform save‎

الأمر plugin

ملخص

يمكن هذا الأمر من إدارة إضافات المشروع

الصياغة

cordova {plugin | plugins} [
    add <plugin-spec> [..] {--searchpath=<directory> | --noregistry | --link | --save | --browserify | --force} |
    {remove | rm} {<pluginid> | <name>} --save |
    {list | ls} |
    search [<keyword>] |
    save |
]‎

الأمر الفرعي الخيار الوصف add <plugin-spec> [...]

يضيف هذا الأمر الإضافات المحددة --searchpath <directory> عند البحث عن الإضافات عبر مُعرِّفها (ID)، فسيتم البحث أولا في هذا المجلد وكل من المجلدات الفرعية الخاصة به قبل البحث في السجل (registry). يمكن تحديد عدة مسارات للبحث. استخدم ":" كفاصل في أنظمة *nix و "؛" في ويندوز. --noregistry لا تبحث في السجل عن الإضافات. --link عند التثبيت من مسار محلي، فسيتم إنشاء رابط رمزي (symbolic link) بدلاً من نسخ الملفات. يختلف مدى ارتباط الملفات حسب المنصة. هذا الأمر مفيد لتطوير الإضافات. --nosave عدم حفظ <plugin-spec> كجزء من العنصر plugin في الملف config.xml أو package.json. --browserify تصريف (Compile) إضافة [[JavaScript|جافااسكريبت]] في وقت البناء باستخدام browserify بدلا من runtime. --force تم تقديمه في الإصدار 6.1. يفرض نسخ الملفات المصدرية من الإضافة حتى لو كان الملف نفسه موجودًا سلفًا في المجلد الهدف. remove ` `[...] --nosave عدم إزالة الإضافة المحددة من الملف config.xml أو package.json list

سرد قائمة من الإضافات المثبتة حاليا search [<keyword>] [...]

البحث في http://plugins.cordova.io عن الإضافات التي تطابق الكلمات الرئيسية save

حفظ العنصر <plugin-spec> الخاص بجميع الإضافات المضافة حاليًا إلى المشروع

تحديد الإضافات (Plugin-spec)

هناك عدة طرق لتحديد الإضافة:

<plugin-spec> : [@scope/]pluginID[@version]|directory|url[#commit-ish][:subdir]‎

القيمة الوصف scope نطاق الإضافة المنشورة على هيئة scoped npm package plugin معرف الإضافة (معرف الإضافة في سجل npm أو في - searchPath) version مُحدِّد الإصدار (version specifier) على هيئة "الإصدار_الرئيسي.الإصدار_الفرعي.الرُقعة" (Major.minor.patch) باستخدام semver directory المجلد الذي يحتوي على الملف plugin.xml url رابط مستودع git الذي يحتوي الملف plugin.xml commit-ish مرجع الالتزام/الوسم/الفرع (Commit/tag/branch). إذا لم يتم تحديد أي منها، فسيتم استخدام "master"

خوارزمية لحل الإضافات (Algorithm for resolving plugins)

عند إضافة إضافة إلى مشروع، ستعمل واجهة سطر الأوامر على حل (تحديد) الإضافة استنادًا إلى المعايير التالية (مدرجة حسب ترتيب الأسبقية):

  • قيمة العنصر plugin-spec الوارد في الأمر (على سبيل المثال cordova plugin add pluginID@version)
  • قيمة plugin-spec المحفوظة في الملفين config.xml و package.json (أي إن سبق وأضيفت الإضافة بدون الخيار --nosave)
  • اعتبارًا من الإصدار 1.6 من كوردوفا، أحدث إصدار منشور من الإضافة في مدير الحُزم npm، والذي يمكن للمشروع الحالي دعمه (ينطبق فقط على الإضافات التي تسرد ارتباطات كوردوفا خاصتها Cordova dependencies في الملف package.json)
  • أحدث إصدار ملحق ينشر إلى npm

أمثلة

قم بإضافة cordova-plugin-camera و cordova-plugin-file إلى المشروع، واحفظه في الملفين config.xml و package.json. واستخدم المجلد ../plugins للبحث عن الإضافات.

cordova plugin add cordova-plugin-camera cordova-plugin-file --save --searchpath ../plugins‎

إضافة cordova-plugin-camera مع semver الإصدار ^ 2.0.0 وحفظه في config.xml و package.json:

cordova plugin add cordova-plugin-camera@^2.0.0‎

إضافة الإضافة من المجلد المحلي المحدد:

cordova plugin add ../cordova-plugin-camera‎

إضافة الإضافة من ملف tarball المحدد:

cordova plugin add ../cordova-plugin-camera.tgz‎

إزالة الإضافة من المشروع ومن الملفين config.xml و package.json:

cordova plugin rm camera‎

إزالة الإضافة من المشروع، دون إزالتها من الملفين config.xml أو package.json:

cordova plugin rm camera --nosave‎

إدارج قائمة من جميع الإضافات المثبتة في المشروع:

cordova plugin ls‎

الإضافات المُتعارضة (Conflicting plugins)

قد يحدث تعارض بين الإضافات في حال استخدمت الإضافات المضافة الوسم edit-config في الملف plugin.xml الخاص بها. يمكن الوسم edit-config الإضافات من أن تضيف أو تستبدل خاصيات عناصر XML.

يمكن أن تتسبب هذه الميزة في حدوث مشكلات في التطبيق إن حاولت أكثر من إضافة واحدة تعديل نفس العنصر XML. لقد تم تقديم (implement) عملية رصد التعارض حتى لا تُضاف الإضافات بحيث تمنع قيام أحد الإضافات بالكتابة فوق (overwrite) التغييرات في وسم edit-config تابع لإضافة أحرى. سيُطلق خطأ عند العثور على تعارض في edit-config، ولن تُضاف الإضافة. ستشير رسالة الخطأ إلى أنه يجب حل جميع التعارضات قبل إضافة الإضافة. أحد الخيارات المتاحة لحل تعارض edit-config هو إجراء تغييرات في الملف plugin.xml الخاص بالإضافات المتأثرة بحيث لا تعدّل نفس عنصر XML. الخيار الآخر هو استخدام الراية --force، والتي تفرض إضافة الإضافة. يجب استخدام هذا الخيار بحذر لأنه يتجاهل التعارضات المرصودة، وسيكتب فوق (overwrite) جميع التعارضات التي حدثت مع الإضافات الأخرى، وهذا سترك الإضافات الأخرى في حالة سيئة.

ارجع إلى plugin.xml guide لإدارة edit-config وحل التعارضات، ولأجل الأمثلة.

الأمر كوردوفا prepare

ملخص

يحوِّل هذا الأمر البيانات الوصفية في الملف config.xml إلى ملفات بيانية (manifest files) مخصوصة بالمنصات، وينسخ الأيقونات وشاشات البداية (splashscreens)، وينسخ ملفات الإضافات الخاصة بمنصات محددة بحيث يكون المشروع جاهزًا للبناء بواسطة بيئة العمل الأصلية SDK.

الصياغة

cordova prepare [<platform> [..]]
     [--browserify]‎

خيارات

الخيار الوصف <platform> [..] اسم (أسماء) المنصة المراد تحضيرها. في حال عدم تحديده، فستُبنى جميع المنصات. --browserify تصريف (Compile) ملفات [[JavaScript|جافااسكريبت]] الخاصة بالإضافة في وقت البناء باستخدام browserify بدلا من runtime.

الأمر كوردوفا compile

ملخص

الأمر cordova compile هو جزء من [#cordova-build-command cordova build command]. إن أنه يكتفي بتنفيذ خطوة التصريف (compilation)، لكن دون القيام بالتحضير. من الشائع استدعاء cordova build بدلاً من هذا الأمر - لكن هذه المرحلة مفيدة للسماح بالتمديد باستخدام hooks.

الصياغة

cordova build [<platform> [...]]
    [--debug|--release]
    [--device|--emulator|--target=<targetName>]
    [--buildConfig=<configfile>]
    [--browserify]
    [-- <platformOpts>]‎

لمزيد من التفاصيل، راجع وثائق [#cordova-build-command cordova build command] أدناه.

الأمر كوردوفا build

ملخص

هذا الأمر هو اختصار لـ cordova prepare + cordova compile لجميع المنصات المحددة. يسمح لك ببناء التطبيق لأجل المنصة المحددة.

الصياغة

cordova build [<platform> [...]]
    [--debug|--release]
    [--device|--emulator]
    [--buildConfig=<configfile>]
    [--browserify]
    [-- <platformOpts>]‎

الخيار الوصف <platform> [..] اسم(اء) المنصة المراد بناؤها. في حال عدم تحديده، ستُبنى جميع المنصات. --debug القيام ببناء مُصحّح (debug build) هذا يترجم عادة إلى وضع التصحيح للمنصة التي يتم بناؤها. --release تنفيذ بناء الإطلاق (release build). هذا يترجم عادة إلى وضع الإطلاق للمنصة التي يجري بناؤها. --device البناء لأجل لجهاز --emulator الببناء لأجل المحاكي. قد تختلف بنية المنصة لمحاكيات الجهاز Vs. --buildConfig=<configFile> القيمة الافتراضية: build.json في المجلد الجذري لكوردوفا. استخدام ملف الإعداد المحدد لأجل البناء. يستخدم الملف build.json لتحديد المعاملات لتخصيص عملية بناء التطبيق، خاصة فيما يتعلق بتوقيع (signing) الحزمة. ‎--browserify تصريف (Compile) إضافة [[JavaScript|جافااسكريبت]] في وقت البناء باستخدام browserify بدلا من runtime. <platformOpts> لتوفير خيارات مخصوصة بمنصة معينة، فيجب عليك إدارجها بعد الفاصل --. راجع مستندات دليل المنصة لمزيد من التفاصيل.

أمثلة

البناء لمنصتي android و windows في الوضع debug للنشر على الجهاز:

cordova build android windows --debug --device‎

البناء من أجل المنصة android في الوضع release مع استخدام إعدادات البناء المحددة:

cordova build android --release --buildConfig=..\myBuildConfig.json‎

البناء للمنصة android في وضع الإطلاق (release)، مع تمرير خيارات مخصوصة بالمنصة أندرويد لأجل عملية البناء:

cordova build android --release -- --keystore="..\android.keystore" --storePassword=android --alias=mykey‎

الأمر كوردوفا run

ملخص

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

الصياغة

cordova run [<platform> [...]]
    [--list | --debug | --release]
    [--noprepare] [--nobuild]
    [--device|--emulator|--target=<targetName>]
    [--buildConfig=<configfile>]
    [--browserify]
    [-- <platformOpts>]‎

الخيار الوصف <platform> [..] اسم(اء) المنصة المراد تشغيلها. في حال عدم تحديده، يتم تشغيل جميع المنصات. ‎--list تعيد قائمة تضم الأهداف (targets) المتاحة. وتعرض أهداف النشر الخاصة بالجهاز والمحاكي ما لم يتم تحديدها ‎--debug تقوم هذه الخاصية بنشر بناء مُصحّح (debug build). هذا هو السلوك الافتراضي إلا إن تم تحديد الراية --release. ‎--release نشر بناء إصداري (release build) ‎--noprepare تخطي مرحلة التحضير (متوفر في الإصدار كوردوفا v6.2 وما بعده) ‎--nobuild تخطي مرحلة البناء ‎--device النشر إلى الجهاز ‎--emulator النشر إلى المحاكي ‎--target نشر إلى محاكي أو جهاز محدد. استخدم الراية --list لعرض الخيارات المستهدفة --buildConfig = <configFile> القيمة الافتراضية: build.json في المجلد الجذري لكوردوفا. استخدام ملف الإعداد المحدد في البناء. يُستخدم ملف build.json لتحديد الوسائط لتخصيص عملية بناء التطبيق، خاصة فيما يتعلق بتوقيع (signing) الحزمة. ‎--browserify تصريف (Compile) إضافة [[JavaScript|جافااسكريبت]] في وقت البناء باستخدام browserify بدلا من runtime. <platformOpts> لتوفير خيارات مخصوصة بمنصة محددة، فيجب عليك إدارجها بعد الفاصل --. راجع مستندات دليل المنصة لمزيد من التفاصيل.

أمثلة

تشغيل عملية بناء للإطلاق (release build) لمشروع كوردوفا الحالي على محاكي المنصة android المسمى Nexus_5_API_23_x86. مع استخدم إعدادات البناء المحددة عند التشغيل:

cordova run android --release --buildConfig=..\myBuildConfig.json --target=Nexus_5_API_23_x86‎

تشغيل عملية بناء مُصححة (debug build) لمشروع كوردوفا الحالي على المنصة android باستخدام جهازٍ أو محاكٍ (في حال عدم وجود جهاز متصل). مع تخطي مرحلة البناء:

cordova run android --nobuild‎

تشغيل بناء مصحح لمشروع كوردوفا الحالي على جهاز ios:

cordova run ios --device‎

تعداد أسماء جميع الأجهزة المتصلة والمحاكيت المتاحة التي يمكن استخدامها لتشغيل هذا التطبيق:

cordova run ios --list‎

الأمر cordova emulate

ملخص

هذا الأمر هو اختصار للتعبيؤ cordova run --emulator. ويطلق المحاكي بدلًا من الجهاز. انظر صفحة [#cordova-run-command cordova run command docs] لمزيد من التفاصيل.

الأمر cordova clean

ملخص

ينظف مخلفات (artifacts) البناء الخاصة بجميع المنصات، أو الخاصة بالمنصة المحددة عن طريق تشغيل عملية تنظيف البناء خاصة بالمنصة.

الصياغة

cordova clean [<platform> [...]]‎

مثال

تنظيف مخلفات البناء الخاصة بالمنصة android:

cordova clean android‎

الأمر cordova requirements

ملخص

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

يمكن أن يكون ذلك مفيدًا عند إعداد جهاز لبناء منصة معينة.

الصياغة

cordova requirements android‎

الأمر cordova info

ملخص

يطبع هذا الأمر معلومات مفيدة لتقديم تقارير الأخطاء والحصول على المساعدة. إذ ينشئ ملفًا info.txt في قاعدة المشروع.

الصياغة

cordova info‎

الأمر cordova serve

ملخص

يشغل هذا الأمر خادمًا محليًا من المجلد www/assets باستخدام المنفذ port المحدد، أو المنفذ الافتراضي ذو القيمة 8000. يمكن الدخول إلى المشاريع من العنوان: http://HOST_IP:PORT/PLATFORM/www

الصياغة

cordova serve [port]‎

الأمر cordova telemetry

ملخص

هذا الأمر يُستخدم لتعطيل أو تمكين مجموعة القياس عن بُعد (telemetry collection).

الصياغة

cordova telemetry [STATE]‎

الخيار الوصف on تشغيل مجموعة القياس عن بعد (telemetry collection). off تعطيل مجموعة القياس عن بعد (telemetry collection).

تفاصيل

يتم عرض محث (prompt) موقوت يطلب من المستخدم الاشتراك أو الخروج في المرة الأولى التي يتم فيها تشغيل كوردوفا. ويستمر لمدة 30 ثانية، وبعد ذلك يتم إلغاء اشتراك المستخدم تلقائيًا إذا لم يقدم أي إجابة. في بيئات CI (التكامل المستمر continuous integration)، يمكن ضبط متغير البيئة CI، والذي سيمنع المحث من الظهور. يمكن أيضًا إيقاف تشغيل مجموعة القياس عن بُعد باستخدام أمر واحد عبر الراية --no-telemetry.

أمثلة

cordova telemetry on
cordova telemetry off
cordova build --no-telemetry‎

لمزيد من التفاصيل، انظر إشعار الخصوصية: https://cordova.apache.org/privacy

الأمر cordova help

ملخص

يظهر هذا الأمر ملخص الصياغة، أو يساعد لفهم أمر محدد.

الصياغة

cordova help [command]
cordova [command] -h
cordova -h [command]‎

الأمر cordova config

ملخص

هذا الأمر يعين، و يحصّل، ويحذف، و يعدل ويُدرج قائمة خيارات كوردوفا العامة

الصياغة

cordova config ls
cordova config edit
cordova config set <key> <value>
cordova config get <key>
cordova config delete <key>‎

أمثلة

cordova config set autosave false
cordova config set browserify false‎

مصادر