الملف Config.xml في كوردوفا
يتضمن الملف Config.xml
الإعدادات العامة التي تتحكم في العديد من سلوكيات تطبيقات كوردوفا. هذا الملف مستقل عن المنصات، وهو مصاغ وفق مواصفات W3C في تطبيقات الويب المحزومة (الودجات)، وقد تم توسيعها لتحديد ميزات الواجهة البرمجية (API) لكوردوفا، والإضافات والإعدادات الخاصة بالمنصات.
بخصوص المشاريع التي تم إنشاؤها باستخدام واجهة سطر الأوامر الخاصة بكوردوفا، فيمكن العثور على هذا الملف في المجلد الجذري (top-level directory) التالي:
app/config.xml
لاحظ أنه قبل الإصدار 3.3.1-0.2.0، كان هذا الملف موجودًا في الموضع app/www/config.xml
، وهو ما لا يزال مدعومًا لحد الآن.
عند استخدام واجهة سطر الأوامر لإنشاء مشروع، تُنسخ إصدارات هذا الملف كما هي إلى المجلدات الفرعية في platforms/
. مثل:
app/platforms/ios/AppName/config.xml
app/platforms/android/res/xml/config.xml
بالإضافة إلى خيارات الإعدادات المفصلة أدناه، يمكنك أيضًا إعداد مجموعة من الصور الخاصة بالتطبيق لكل منصة مستهدفة. راجع صفحة تخصيص الأيقونات لمزيد من المعلومات.
widget
تمثل widget
العنصر الجذري في الملف config.xml
.
الخاصيات (النوع)
فقط لمنصات |
الشرح |
---|---|
id (سلسلة نصية)
|
مطلوب
يحدد معرف النطاق العكسي (reverse-domain identifier) للتطبيق |
version (سلسلة نصية)
|
مطلوب
رقم الإصدار الكامل معبر عنه بالصيغة الإصدار_الرئيسي/الإصدار_الفرعي/الرقعة (major/minor/patch). |
android-versionCode (سلسلة نصية)
(أندرويد) |
إصدار بديل لنظام أندرويد. يضبط قيمة إصدار شيفرة التطبيق. راجع صفحة دليل أندرويد للحصول على معلومات حول كيفية تعديل هذه الخاصية. |
ios-CFBundleVersion (سلسلة نصية)
(ios) |
إصدار بديل لنظام iOS. لمزيد من التفاصيل، انظر إصدارات iOS . |
OSX-CFBundleVersion (سلسلة نصية)
(osx) |
إصدار بديل لأنظمة التشغيل OSX. لمزيد من التفاصيل، راجع صفحة إصدارات OS X . |
windows-packageVersion (سلسلة نصية)
(ويندوز) |
إصدار بديل لنظام التشغيل ويندوز. لمزيد من التفاصيل، راجع صفحة إصدارات ويندوز |
android-packageName (سلسلة نصية)
(أندرويد) |
اسم حزمة بديل لمنصة أندرويد، يعيد تعريف id .
|
ios-CFBundleIdentifier (سلسلة نصية)
(ios) |
مُعرّف حزمة (bundle id) بديل لنظام iOS. يتجاوز قيمة id .
|
packageName (سلسلة نصية)
(ويندوز) |
القيمة الافتراضية: Cordova.Example
اسم الحزمة لويندوز. |
defaultlocale
(ويندوز و ios) |
يحدد اللغة الافتراضية للتطبيق، على هيئة رمز IANA. |
android-activityName (سلسلة نصية)
(أندرويد) |
يعيّن اسم النشاط الخاص بتطبيقك في الملف AndroidManifest.xml . لاحظ أن هذه الخاصية تُعيّن مرة واحدة فقط بعد إضافة نظام أندرويد للمرة الأولى.
|
XMLNS (سلسلة نصية)
|
مطلوب
مجال الاسماء (Namespace) للمستند |
xmlns:cdv (سلسلة نصية)
|
مطلوب
بادئة مجال الاسماء (Namespace). |
أمثلة:
<!-- أندرويد-->
<widget id="io.cordova.hellocordova" version="0.0.1" android-versionCode="13" xmlns="http://www.w3.org/ns/widgets" xmlns:cdv="http://cordova.apache.org/ns/1.0">
</widget>
<!-- iOS -->
<widget id="io.cordova.hellocordova" version="0.0.1" ios-CFBundleVersion="0.1.3" xmlns="http://www.w3.org/ns/widgets" xmlns:cdv="http://cordova.apache.org/ns/1.0">
</widget>
<!-- ويندوز-->
<widget id="io.cordova.hellocordova" version="0.0.1" windows-packageVersion="0.1.3" xmlns="http://www.w3.org/ns/widgets" xmlns:cdv="http://cordova.apache.org/ns/1.0">
</widget>
<!-- OS X -->
<widget id="io.cordova.hellocordova" version="0.0.1" osx-CFBundleVersion="0.1.3" xmlns="http://www.w3.org/ns/widgets" xmlns:cdv="http://cordova.apache.org/ns/1.0">
</widget>
name
يحدد الاسم الرسمي للتطبيق، كما يظهر على الشاشة الرئيسية للجهاز وضمن واجهات متجر التطبيقات.
أمثلة:
<widget ...>
<name>HelloCordova</name>
</widget>
الاسم المختصر (short name)
تحدد هذه الخاصية اسمًا اختياريًا لعرضٍ للتطبيق. ففي بعض الأحيان، يكون اسم التطبيق المعروض على الشاشة الرئيسية للجهاز مختلفًا عنه على واجهات المعلومات وواجهات متجر التطبيقات بسبب محدودية المساحة.
أمثلة:
<widget ...>
<name short="HiCdv">HelloCordova</name>
</widget>
description
يحدد هذا الوسم البيانات الوصفية (metadata) التي قد تظهر داخل قوائم متجر التطبيقات.
أمثلة:
<widget ...>
<description>A sample Apache Cordova application</description>
</widget>
author
تحدد معلومات الاتصال التي قد تظهر داخل قوائم متجر التطبيقات.
الخاصيات (النوع)
فقط لمنصات |
الشرح |
---|---|
email (سلسلة نصية)
|
مطلوب
البريد الإلكتروني للمؤلف. |
href (سلسلة نصية)
|
مطلوب
موقع المؤلف. |
أمثلة:
<widget ...>
<author email="dev@cordova.apache.org" href="http://cordova.io"></author>
</widget>
content
يحدد هذا الوسم صفحة البدء الخاصة بالتطبيق في المجلد الجذري للأصول (top-level web assets directory). القيمة الافتراضية هي index.html
، والتي تظهر عادة في المجلد الجذري للمشروع www
.
الخاصيات (النوع)
فقط لمنصات |
الشرح |
---|---|
src (سلسلة نصية)
|
مطلوب
تحدد صفحة البدء الخاصة بالتطبيق في المجلد الجذري للأصول (web assets directory). القيمة الافتراضية هي |
أمثلة:
<widget ...>
<content src="startPage.html"></content>
</widget>
access
يحدد هذا الوسم مجموعة النطاقات الخارجية التي يُسمح للتطبيق بالاتصال بها.
الخاصيات (النوع)
فقط لمنصات |
الشرح |
---|---|
origin (سلسلة نصية)
|
مطلوب
تحدد مجموعة النطاقات الخارجية التي يُسمح للتطبيق بالاتصال بها. |
تسمح القيمة الافتراضية الموضحة أعلاه بوصول التطبيق إلى أي خادم. راجع صفحة اللوائح البيضاء لمزيد من التفاصيل.
أمثلة:
<widget ...>
<access origin="*"></access>
</widget>
<widget ...>
<access origin="http://google.com"></access>
</widget>
allow-navigation
يتحكم هذا الوسم في العناوين التي يمكن للعارض أن يتصفّحها. ينطبق على المستوى الأعلى من المواقع فقط.
الخاصيات (النوع)
فقط لمنصات |
الشرح |
---|---|
href (سلسلة نصية)
|
مطلوب
يحدد مجموعة النطاقات الخارجية التي يُسمح للعارض بالانتقال إليها. |
انظر صفحة cordova-plugin-whitelist لمزيد من التفاصيل.
أمثلة:
<!-- example.com السماح بالروابط للنطاق -->
<allow-navigation href="http://example.com/*" />
<!-- Wildcards are allowed for the protocol, as a prefix to the host, or as a suffix to the path -->
<!-- علامة النجمة مسموح بها مكان البروتوكول، كبادئة للمُضيف، أو كلاحقة للمسار -->
<allow-navigation href="*://*.example.com/*" />
allow-intent
يتحكم هذا الوسم في العناوين التي يُسمح للتطبيق بمطالبة النظام بفتحها. افتراضيًا، لا يُسمح بأي عناوين خارجية.
الخاصيات (النوع)
فقط لمنصات |
الشرح |
---|---|
href (سلسلة نصية)
|
مطلوب
تحدد العناوين التي يُسمح للتطبيق بمطالبة النظام بفتحها. |
انظر صفحة cordova-plugin-whitelist لمزيد من التفاصيل.
أمثلة:
<allow-intent href="http://*/*" />
<allow-intent href="https://*/*" />
<allow-intent href="tel:*" />
<allow-intent href="sms:*" />
edit-config
راجع صفحة plugin.xml.
config-file
راجع صفحة plugin.xml.
engine
يحدد هذا الوسم تفاصيل حول المنصة المطلوب استرجاعها (restore) أثناء الإعداد.
الخاصيات (النوع)
فقط لمنصات |
الشرح |
---|---|
name (سلسلة نصية)
|
مطلوب
اسم المنصة المراد استرجاعها |
spec (سلسلة نصية)
|
مطلوب
تفاصيل حول المنصة المراد استعادتها. قد تكون قيمة هذه الخاصية رقمَ إصدار وفق الصيغة |
أمثلة:
<engine name="android" spec="https://github.com/apache/cordova-android.git#5.1.1" />
<engine name="ios" spec="^4.0.0" />
plugin
يحدد هذا الوسم تفاصيل حول الإضافات المطلوب استرجاعها (restore) أثناء الإعداد. يُضاف هذا العنصر تلقائيًا إلى الملف config.xml
الخاص بالمشروع عندما تُضاف إضافة باستخدام الراية --save
. انظر صفحة واجهة سطر الأوامر لمزيد من المعلومات حول إضافة الإضافات.
الخاصيات (النوع)
فقط لمنصات |
الشرح |
---|---|
name (سلسلة نصية)
|
مطلوب
اسم الإضافة المراد استرجاعها |
spec (سلسلة نصية)
|
مطلوب
تفاصيل حول الإضافة المراد استعادتها. قد تكون قيمة هذه الخاصية رقم إصدار وفق الصيغة |
أمثلة:
<plugin name="cordova-plugin-device" spec="^1.1.0" />
<plugin name="cordova-plugin-device" spec="https://github.com/apache/cordova-plugin-device.git#1.0.0" />
variable
يخزّن هذا الوسم قيمة متغيرٍ من متغيرات واجهة سطر الأوامر لكي يُستخدم عند استرجاع إضافةٍ ما أثناء الإعداد. هذا العنصر يُدرج في الملف config.xml
عندما تُضاف إحدى الإضافات التي تستخدم متغيرات واجهة سطر الأوامر باستخدام الراية --save
. راجع صفحة واجهة سطر الأوامر لمزيد من المعلومات حول إضافة الإضافات.
لاحظ أن هذه القيمة لا تُستخدم إلا عند استرجاع الإضافة إلى المشروع أثناء الإعداد، ولن يؤدي تغييرها إلى تغيير القيمة التي تستخدمها الإضافة في المشروع الحالي. لكي تسري التغييرات على هذه القيمة فعليًا، أزل الإضافة من المشروع واسترجعها عن طريق تنفيذ الأمر cordova prepare
. انظر قسم العنصر preference
الخص بالملف plugin.xml
لمزيد من التفاصيل حول متغيرات واجهة سطر الأوامر.
الخاصيات (النوع)
فقط لمنصات |
الشرح |
---|---|
name (سلسلة نصية)
|
مطلوب
اسم متغير واجهة سطر الأوامر. لا يمكن أن يحتوي إلا على الأحرف الكبيرة والأرقام والشرطات السفلية. |
value (سلسلة نصية)
|
مطلوب
قيمة متغير واجهة سطر الأوامر المراد استخدامه عند استرجاع الإضافة الأم (parent plugin) أثناء الإعداد. |
أمثلة:
<plugin name="cordova-plugin-device" spec="^1.1.0">
<variable name="MY_VARIABLE" value="my_variable_value" />
</plugin>
preference
يعيّن هذا الوسم مُختلف الخيارات على هيئة زوج من أسماء/قيم الخاصيات (name/value). الاسماء في preference
غير حساسة لحالة الأحرف.
العديد من التفضيلات مخصوصة بمنصات محددة، وسيتم الإشارة إليها في موضعها.
الخاصيات (النوع)
فقط لمنصات |
الشرح |
---|---|
AllowInlineMediaPlayback (قيمة منطقية)
(ios) |
القيمة الافتراضية: false
اضبطها عند القيمة ملاحظة: قبل الإصدار iOS 10، كانت العناصر |
AndroidLaunchMode (سلسلة نصية)
(أندرويد) |
القيمة الافتراضية: singleTop
القيم المسموح بها: تعيّن قيمة الخاصية |
android-maxSdkVersion (عدد صحيح)
(أندرويد) |
القيمة الافتراضية: غير محددة
تضبط قيمة الخاصية |
android-minSdkVersion (سلسلة نصية)
(أندرويد) |
القيمة الافتراضية: يعتمد على إصدار منصة كوردوفا أندرويد
تضبط قيمة الخاصية |
android-targetSdkVersion (عدد صحيح)
(أندرويد) |
القيمة الافتراضية: تعتمد على إصدار كوردوفا-أندرويد
تضبط قيمة الخاصية |
android-minSdkVersion (سلسلة نصية)
(أندرويد) |
القيمة الافتراضية: يعتمد على إصدار منصة كوردوفا أندرويد
تضبط قيمة الخاصية |
AppendUserAgent (سلسلة نصية)
(أندرويد - ios) |
في حال تعيينها، ستُضاف قيمتها إلى نهاية وكيل المستخدم UserAgent القديم الخاص بالعارض. عند استخدامها مع OverrideUserAgent ، سيتم تجاهل هذه القيمة.
|
BackgroundColor (سلسلة نصية)
(أندرويد - ويندوز - ios) |
تعيّن هذه الخاصية لون خلفية التطبيق. تدعم القيم اللونية السداسعشرية ذات الأربع بايتات (four-byte hex)، إذ يمثل البايت الأول قناة الشفافية ألفا (alpha channel)، فيما تمثل البايتات الثلاث التالية قيم المُركّبات اللونية الثلاثة RGB.
في منصة ويندوز، يتم تجاهل قناة ألفا. ملاحظة: ستُضبط القيمة |
BackupWebStorage (سلسلة نصية)
(ios) |
القيمة الافتراضية: cloud
القيم المسموح بها: اضبط هذه الخاصية عند القيمة " |
CordovaWebViewEngine (سلسلة نصية)
(ios) |
القيمة الافتراضية: CDVUIWebViewEngine
تُعيّن هذه الخاصية قيمة إضافة محرك العارض (WebView engine plugin) ليتم استخدامها لعرض مضيف التطبيق. يجب أن تتوافق الإضافة مع البروتوكول عادةً ما يتم تعيين هذا التفضيل بواسطة إضافة محرك العارض المثبتة تلقائيًا. |
CordovaDefaultWebViewEngine (سلسلة نصية)
(ios) |
القيمة الافتراضية: CDVUIWebViewEngine
مثل الإعداد السابق، يجب أن تتوافق الإضافة مع البروتوكول |
DefaultVolumeStream (سلسلة نصية)
(أندرويد) |
القيمة الافتراضية: default
تمت إضافة هذا الإعداد منذ منصة كوردوفا-أندرويد 3.7.0، هذا التفضيل يحدد الصوت (volume) الذي ترتبط به أزرار مستوى الصوت في الأجهزة. بشكل افتراضي، ستكون قيمة هذه الخاصية " اضبط هذا الخيار عند القيمة " |
DisallowOverscroll (قيمة منطقية)
(أندرويد - ios) |
القيمة الافتراضية: false
اضبط هذا الإعداد عند القيمة |
EnableViewportScale (قيمة منطقية)
(ios) |
القيمة الافتراضية: false
اضبط هذا الإعداد عند القيمة |
EnableWebGL (قيمة منطقية)
(OS X 4.0.0+) |
القيمة الافتراضية: false
اضبط هذا الإعداد عند القيمة |
ErrorUrl (عنوان URL)
(أندرويد) |
القيمة الافتراضية: null
في حال تعيين هذا الإعداد، فسيتم عرض الصفحة المشار إليها عند حدوث خطأ في التطبيق بدلاً من عرضها في مربع حوار بعنوان "Application Error" |
ErrorUrl (سلسلة نصية)
(ios) |
في حال تعيين هذا الإعداد، فسيتم عرض الصفحة المحلية المشار إليها عند حدوث خطأ في التطبيق. |
ForegroundText (سلسلة نصية)
(ويندوز) |
القيمة الافتراضية: "light "
يعمل فقط على مشاريع ويندوز 8.1. القيم المسموح بها: " اضبط هذا الإعداد عند القيمة " |
FullScreen (قيمة منطقية)
(أندرويد) |
القيمة الافتراضية: false
يسمح لك بإخفاء شريط الحالة (status bar) في الجزء العلوي من الشاشة. ملاحظة: هناك طريقة تحقق هذا المسعى على جميع المنصات، وهي استخدام إضافة شريط الحالة. |
GapBetweenPages (عدد عشري float)
(ios) |
القيمة الافتراضية: 0
حجم الفجوة بين الصفحات بالنقاط. |
HideMousePointer (عدد صحيح)
(OS X 4.0.0+) |
القيمة الافتراضية: -1
يعيّن المهلة قبل إخفاء مؤشر الفأرة. اضبط هذا الإعداد عند القيمة |
InAppBrowserStorageEnabled (قيمة منطقية)
(أندرويد) |
القيمة الافتراضية: true
يتحكم في ما إن كانت الصفحات المفتوحة ضمن |
KeepRunning (قيمة منطقية)
(أندرويد) |
القيمة الافتراضية: true
تحدد هذه الخاصية ما إن كان التطبيق سيبقى قيد التشغيل في الخلفية حتى بعد إطلاق الحدث pause. لا يؤدي تعيين هذا الإعداد عند القيمة |
KeyboardDisplayRequiresUserAction (قيمة منطقية)
(ios) |
القيمة الافتراضية: true
اضبط هذا الإعداد عند القيمة |
LoadUrlTimeoutValue (عدد الميليثواني)
(أندرويد) |
القيمة الافتراضية: 20000، أي 20 ثانية
عند تحميل صفحة، يحدد هذا الإعداد عدد الثواني التي يجب انتظارها قبل إطلاق خطأ انتهاء المهلة (timeout error). |
LoadingDialog (سلسلة نصية)
(أندرويد) |
القيمة الافتراضية: null
في حال تعيين هذا الإعداد، يعرض مربع حوار مع العنوان والرسالة المحددين، ولائحة منسدلة (spinner)، عند تحميل الصفحة الأولى من التطبيق. يفصل العنوان والرسالة بفاصلة في السلسلة النصية المعطاة، وستُزال تلك الفاصلة قبل عرض مربع الحوار. |
LogLevel (سلسلة نصية)
(أندرويد) |
القيمة الافتراضية: ERROR
القيم المسموح بها: يعيّن هذا الإعداد الحد الأدنى لمستوى السجل (log level) حيثُ ستُصفّى رسائل السجل من التطبيق. |
MediaPlaybackAllowsAirPlay (قيمة منطقية)
(ios) |
القيمة الافتراضية: true
اضبط هذا الإعداد عند القيمة |
MediaPlaybackRequiresUserAction (قيمة منطقية)
(ios) |
القيمة الافتراضية: false
اضبط هذا الإعداد عند القيمة |
Min/Max Version (تعبير منطقي Regex)
(ويندوز) |
القيم المسموح بها: /(Microsoft.+? | Windows.+?)-(MinVersion | MaxVersionTested)/i
يحدد هذا الإعداد بيئة العمل (ecosystems) والإصدارات Min /max المتوافقة مع التطبيق. هناك ثلاثة أجزاء لكل قيمة:
إذا لم يتم تحديد أي تفضيلات لهذه الأنواع في الملف ملاحظة: يتم تعيين هذه التفضيلات فقط في ملفات ييانات التطبيق (appxmanifest) للمنصة المُستهدفة، وليس في ملفات جافاسكريبت الخاصة بالمشروع. |
Orientation (سلسلة نصية)
|
القيمة الافتراضية: default
القيم المسموح بها: يتيح لك هذا الإعداد تجميد اتجاه العرض، ومنع الواجهة من الدوران استجابة للتغيرات في الاتجاه. ملاحظة: القيمة الافتراضية |
OSXLocalStoragePath (سلسلة نصية)
(OS X 4.0.0+) |
القيمة الافتراضية: ~/Library/Application Support/{bundle.id}
تعيّن مجلد مسار التخزين المحلي. |
OverrideUserAgent (سلسلة نصية)
(أندرويد - ios) |
في حال تعيين هذا الإعداد، فستحل القيمة الجديدة محل وكيل المستخدم UserAgent القديم في العارض. من المفيد تحديد الطلبية (request) من التطبيق أو المتصفح عند طلب الصفحات البعيدة. استخدم هذا الإعداد بحذر، فقد يتسبب في مشاكل تتعلق بالتوافقية مع الخوادم.
في معظم الحالات، يُفضل استخدام |
PageLength (عدد عشري)
|
القيمة الافتراضية: 0
يحدد حجم كل صفحة، بالنقاط، في الاتجاه الذي تسري فيه الصفحات. عندما تكون الخاصية |
PaginationBreakingMode (سلسلة نصية)
(ios) |
القيمة الافتراضية: page
القيم المسموح بها: القيم الصالحة هي |
PaginationMode (سلسلة نصية)
(ios) |
القيمة الافتراضية: unpaginated
القيم المسموح بها: تحدد هذه الخاصية ما إن كان المحتوى في العارض سيُقسّم إلى صفحات تملأ شاشة العرض في كل مرة، أو يُعرض كمعرضٍ واحد طويل وقابل للتمرير. في حال تعيين هذا الإعداد عند نموذج مقسم (paginated form)، تقوم هذه الخاصية بتبديل تخطيط صفْحِيٍّ (paginated layout) على المحتوى، مما يؤدي إلى استخدام العارض للقيم |
SetFullscreen (قيمة منطقية)
(أندرويد) |
القيمة الافتراضية: false
مشابه للمُعامل تم إيقاف هذا العنصر المخصوص بمنصة أندرويد لصالح عنصر ملء الشاشة العام (global Fullscreen element)، وسيُزال في إصدار مستقبلي. |
ShowTitle (قيمة منطقية)
(أندرويد) |
القيمة الافتراضية: false
إظهار العنوان في أعلى الشاشة. |
SplashScreenBackgroundColor
(ويندوز) |
القيمة الافتراضية: #464646
يضبط لون خلفية شاشة الافتتاح (splashscreen). يقبل هذا الإعداد اسم لون CSS، أو قيمة لونية سداسية عشرية من أربع بايتات (four-byte hex)، حيث يمثل البايت الأول قناة الشفافية ألفا (alpha channel)، فيما تمثل البايتات الأخرى مركبات اللون RGB. يتم تجاهل قناة ألفا على الرغم من أن قيمة |
Suppresses3DTouchGesture (قيمة منطقية)
(ios) |
القيمة الافتراضية: false
اضبط هذا الإعداد عند القيمة اختبر تطبيقك جيدًا لأن هذا الإعداد سيعطل مُعالجات الحدث |
SuppressesIncrementalRendering (قيمة منطقية)
(ios) |
القيمة الافتراضية: false
اضبط هذا الإعداد عند القيمة |
SuppressesLongPressGesture (قيمة منطقية)
(ios) |
القيمة الافتراضية: false
اضبط هذا الإعداد عند القيمة |
TopActivityIndicator (سلسلة نصية)
(ios) |
القيمة الافتراضية: gray
القيم المسموح بها: تتحكم هذه الخاصية في مظهر أيقونة الدوران (spinning icon) الصغيرة في شريط الحالة، والذي يشير إلى وجود نشاطٍ كبيرٍ من المعالج. |
uap-target-min-version (سلسلة نصية)
(ويندوز) |
تعيّن هذه الخاصية قيمة MinTargetVersion على Windows UAP (منصة ويندوز العامة للتطبيقات). في حال لم تُعيّن هذه الخاصية، فستُضبط عند الإصدار المبدئي 10.0.10240.0
ملاحظة: يتم تعيين هذا التفضيل في ملفات جافاسكريبت الخاصة بالمشروع وليس في ملف البيان (appxmanifest). لذلك لن يتمكن المستخدمون الذين لديهم أنظمة تشغيل ذات إصدارات أقل من هذه القيمة من تشغيل التطبيق. |
UIWebViewDecelerationSpeed
(سلسلة نصية) (ios) |
القيمة الافتراضية: normal
القيم المسموح بها: تتحكم هذه الخاصية في سرعة تباطؤ (deceleration) التمرير (scrolling). السرعة الافتراضية هي السرعة العادية ( |
WindowSize (سلسلة نصية)
(OS X 4.0.0+) |
القيمة الافتراضية: auto
تحدد حجم نافذة التطبيق. تقبل الصيغة ملاحظة: الخيار العام |
WindowsDefaultUriPrefix (سلسلة نصية)
(ويندوز) |
القيم المسموح بها: ms-appx:// و ms-appx-web://
تحدد هذه الخاصية ما إذا كنت تريد أن يستهدف تطبيقك السياق المحلي أو السياق البعيد (remote context) باعتباره عنوان الإطلاق (startup URI). عند تطوير تطبيقات لمنصة ويندوز 10، فالإعداد الافتراضي سيكون هو السياق البعيد ( الوضع المحلي هو الوضع الافتراضي لمنصة ويندوز 8.1. |
WindowsStoreDisplayName (سلسلة نصية)
(ويندوز) |
اسم للناشر لأجل عرضه على المستخدمين. |
WindowsStoreIdentityName (سلسلة نصية)
(ويندوز) |
اسم التعريف المستخدم في متجر ويندوز. تحدد هذه الخاصية معرفًا فريدًا عامًّا لحزمة معينة. يُمثّل اسم تعريف الحزمة على هيئة سلسلة من خاصيات الحزمة. انظر صفحة صفحة الهوية في ملف بيان الحُزمة لمزيد من التفاصيل. |
WindowsStorePublisherName (سلسلة نصية)
(ويندوز) |
اسم الناشر. |
WindowsToastCapable (قيمة منطقية)
(ويندوز) |
القيمة الافتراضية: false
تشير القيمة |
deployment-target (سلسلة نصية)
(ios) |
يعيّن هذا الإعداد قيمة IPHONEOSDEPLOYMENTTARGET عند البناء، والذي يترجم في النهاية إلى الخاصية MinimumOSVersion في ملف الأرشيف ipa. لمزيد من التفاصيل، يرجى الرجوع إلى وثائق Apple حول إعدادات النشر.
|
target-device (سلسلة نصية)
(ios) |
القيمة الافتراضية: universal
القيم المسموح بها: ترتبط هذه الخاصية مباشرة بالخاصية |
windows-phone-target-version (سلسلة نصية)
(ويندوز) |
تعيّن هذه الخاصية إصدار Windows Phone الذي ستستهدفه الحزمة (الناتجة من cordova build ). وإذا لم تُحدد، فسيتم تعيينها عند نفس الإصدار مثل windows-target-version (إذا تم العثور عليه).
|
windows-target-version (سلسلة نصية)
(ويندوز) |
تعين هذه الخاصية إصدار ويندوز الذي ستستهدفه الحزمة (الناتجة من cordova build ). إذا لم يتم تحديدها، فسيتم تعيينها عند القيمة "8.1".
|
أمثلة:
<preference name="DisallowOverscroll" value="true"/>
<preference name="Fullscreen" value="true" />
<preference name="BackgroundColor" value="0xff0000ff"/>
<preference name="HideKeyboardFormAccessoryBar" value="true"/>
<preference name="Orientation" value="landscape" />
<!-- iOS تفضيلات خاصة بمنصة -->
<preference name="EnableViewportScale" value="true"/>
<preference name="MediaPlaybackAllowsAirPlay" value="false"/>
<preference name="MediaPlaybackRequiresUserAction" value="true"/>
<preference name="AllowInlineMediaPlayback" value="true"/>
<preference name="BackupWebStorage" value="local"/>
<preference name="TopActivityIndicator" value="white"/>
<preference name="SuppressesIncrementalRendering" value="true"/>
<preference name="GapBetweenPages" value="0"/>
<preference name="PageLength" value="0"/>
<preference name="PaginationBreakingMode" value="page"/>
<preference name="PaginationMode" value="unpaginated"/>
<preference name="UIWebViewDecelerationSpeed" value="fast" />
<preference name="ErrorUrl" value="myErrorPage.html"/>
<preference name="OverrideUserAgent" value="Mozilla/5.0 My Browser" />
<preference name="AppendUserAgent" value="My Browser" />
<preference name="target-device" value="universal" />
<preference name="deployment-target" value="7.0" />
<preference name="CordovaWebViewEngine" value="CDVUIWebViewEngine" />
<preference name="CordovaDefaultWebViewEngine" value="CDVUIWebViewEngine" />
<preference name="SuppressesLongPressGesture" value="true" />
<preference name="Suppresses3DTouchGesture" value="true" />
<!-- Android تفضيلات خاصة بمنصة -->
<preference name="KeepRunning" value="false"/>
<preference name="LoadUrlTimeoutValue" value="10000"/>
<preference name="InAppBrowserStorageEnabled" value="true"/>
<preference name="LoadingDialog" value="My Title,My Message"/>
<preference name="ErrorUrl" value="myErrorPage.html"/>
<preference name="ShowTitle" value="true"/>
<preference name="LogLevel" value="VERBOSE"/>
<preference name="AndroidLaunchMode" value="singleTop"/>
<preference name="DefaultVolumeStream" value="call" />
<preference name="OverrideUserAgent" value="Mozilla/5.0 My Browser" />
<preference name="AppendUserAgent" value="My Browser" />
<!-- Windows تفضيلات خاصة -->
<preference name="windows-phone-target-version" value="8.1" />
<preference name="windows-target-version" value="8.1" />
<preference name="Windows.Universal" value="10.0.10240.0" />
<preference name="WindowsDefaultUriPrefix" value="ms-appx://" />
<preference name="Windows.Mobile-MaxVersionTested" value="10.0.10031.0" />
<preference name="Windows.Universal-MinVersion" value="10.0.0.0" />
<preference name="WindowsStoreIdentityName" value="Cordova.Example.ApplicationDataSample" />
<preference name="WindowsStorePublisherName" value="CN=Contoso Corp, O=Contoso Corp, L=Redmond, S=Washington, C=US" />
<preference name="WindowsToastCapable" value="true" />
<preference name="uap-target-min-version" value="10.0.10586.0" />
<!-- OS X تفضيلات خاصة بمنصة -->
<preference name="HideMousePointer" value="5"/>
<preference name="OSXLocalStoragePath" value="~/.myapp/database"/>
<preference name="WindowSize" value="800x400"/>
<preference name="EnableWebGL" value="true"/>
feature
إن كنت تستخدم واجهة سطر الأوامر لإنشاء التطبيقات، فستستخدم أمر الإضافة (plugin command) لتمكين الواجهات البرمجية (APIs) للجهاز. ولن يعدّل ذلك الملف config.xml
، لذلك فإن هذا العنصر لن ينطبق على سير عملك.
إذا كنت تعمل مباشرةً في بيئة العمل SDK وكنت تستخدم الملف config.xml
المخصوص بالمنصة كمصدر، فاستخدم هذا الوسم لتمكين الواجهات البرمجية على مستوى الجهاز والإضافات الخارجية. حيث غالبًا ما تظهر مع قيم مخصصة في ملفات config.xml
المخصوصة بالمنصات. راجع مرجع واجهة التطبيقات API للمزيد من التفاصيل حول كيفية تحديد كل ميزة. وراجع صفحة دليل تطوير الإضافات لمزيد من المعلومات حول إضافة الإضافات.
ملاحظة: في معظم الأحيان، ليس عليك تعيين هذا الإعداد مباشرة.
الخاصيات (النوع)
فقط لمنصات |
الشرح |
---|---|
name (سلسلة نصية)
|
مطلوب
اسم الإضافة المراد تمكينها. |
param
يستخدم هذا الوسم لتحديد معاملات الإضافة، مثلًا: ما هي الحزمة التي ستُسترد شيفة الإضافة منها، وما إذا كانت شيفرة الإضافة ستُهيؤ أثناء تهيئة العارض.
الخاصيات (النوع)
فقط لمنصات |
الشرح |
---|---|
name (سلسلة نصية)
(أندرويد - osx - ios) |
مطلوب
القيم المسموح بها: تُستخدم القيم " |
value (سلسلة نصية أو قيمة منطقية)
(أندرويد - osx - ios) |
مطلوب
تحدد اسم الحزمة التي ستُستخدم لتهيئة شيفرة الإضافة (عندما تساوي الخاصية ' |
أمثلة:
<!--هكذا تحدد الواجهة البرمجية للجهاز لتطبيقات أنردويد -->
<feature name="Device">
<param name="android-package" value="org.apache.cordova.device.Device" />
</feature>
<!-- Here's how the element appears for iOS projects -->
<feature name="Device">
<param name="ios-package" value="CDVDevice" />
<param name="onload" value="true" />
</feature>
<!-- Here's how the element appears for OS X projects -->
<!-- osx هكذا تظهر العناصر لمشاريع -->
<feature name="Device">
<param name="osx-package" value="CDVDevice" />
<param name="onload" value="true" />
</feature>
platform
عند استخدام واجهة سطر الأوامر لإنشاء التطبيقات، من الضروري في بعض الأحيان تحديد التفضيلات وغيرها من العناصر الخاصة بمنصة معينة.
استخدم العنصر platform
لتحديد الإعدادات الذي يجب أن تظهر حصرًا في الملف config.xml
الخاص بالمنصة.
الخاصيات (النوع)
فقط لمنصات |
الشرح |
---|---|
name (سلسلة نصية)
|
مطلوب
المنصة المراد تحديد تفضيلاتها. |
أمثلة:
<platform name="android">
<preference name="Fullscreen" value="true" />
</platform>
hook
يمثل هذا العنصر برنامجك النصي (script) المخصص، والذي سيٌستدعى من قبل كوردوفا عند وقوع حدثٍ معينٍ (على سبيل المثال، بعد إضافة الإضافة أو عند استدعاء سلسلة التحضير الخاصة بالمنصة). هذا مفيد عندما تحتاج إلى توسيع كوردوفا. راجع صفحة الخطافات لمزيد من المعلومات.
الخاصيات (النوع)
فقط لمنصات |
الشرح |
---|---|
type (سلسلة نصية)
|
مطلوب
يحدد الإجراء الذي يتم خلاله استدعاء البرنامج النصي المخصص. |
src (سلسلة نصية)
|
مطلوب
يحدد مكان البرنامج النصي المراد استدعاؤه عند حدوث إجراء محدد. |
أمثلة:
<hook type="after_plugin_install" src="scripts/afterPluginInstall.js" />
resource-file
يثبّت هذا الوسم الملفات المصدرية (resource files) في المنصة، وهو مماثل لوسمٍ يحمل نفس الاسم في الملف plugin.xml
.
هذا الوسم ليس مدعومًا حاليًا إلا في الإصدار cordova-ios@4.4.0
ومافوق، وفي الإصدار cordova-android@6.2.1
وما فوق.
الخاصيات (النوع)
فقط لمنصات |
الشرح |
---|---|
src (سلسلة نصية)
(أندرويد - ios) |
مطلوب
موقع الملف بالنسبة إلى |
target (سلسلة نصية)
|
المسار حيث سيُنسخ الملف داخل المجلد خاصتك. |
مثال خاص بأجهزة الأندرويد:
<resource-file src="FooPluginStrings.xml" target="res/values/FooPluginStrings.xml" />
عينة من الملف config.xml
فيما يلي نموذج للملف config.xml
:
<?xml version='1.0' encoding='utf-8'?>
<widget id="io.cordova.hellocordova" version="0.0.1" xmlns="http://www.w3.org/ns/widgets" xmlns:cdv="http://cordova.apache.org/ns/1.0">
<name>HelloCordova</name>
<description>
A sample Apache Cordova application that responds to the deviceready event.
</description>
<author email="dev@cordova.apache.org" href="http://cordova.io">
Apache Cordova Team
</author>
<content src="index.html" />
<plugin name="cordova-plugin-whitelist" spec="1" />
<access origin="*" />
<allow-intent href="http://*/*" />
<allow-intent href="https://*/*" />
<allow-intent href="tel:*" />
<allow-intent href="sms:*" />
<allow-intent href="mailto:*" />
<allow-intent href="geo:*" />
<platform name="android">
<allow-intent href="market:*" />
</platform>
<platform name="ios">
<allow-intent href="itms:*" />
<allow-intent href="itms-apps:*" />
</platform>
</widget>
انظر أيضا
- صفحة الملف Plugin.xml.
- صفحة واجهة سطر الأوامر.