الفرق بين المراجعتين ل"Cordova/cordova plugin device"

من موسوعة حسوب
اذهب إلى التنقل اذهب إلى البحث
(أنشأ الصفحة ب'<noinclude>{{DISPLAYTITLE:إضافة حالة الجهاز في كوردوفا}}</noinclude> تصنيف: Cordova تصنيف: plugin تصنيف: cordova_p...')
 
سطر 1: سطر 1:
 
<noinclude>{{DISPLAYTITLE:إضافة حالة الجهاز في كوردوفا}}</noinclude>
 
<noinclude>{{DISPLAYTITLE:إضافة حالة الجهاز في كوردوفا}}</noinclude>
 
[[تصنيف: Cordova]]
 
[[تصنيف: Cordova]]
[[تصنيف: plugin]]
+
[[تصنيف: plugin]]
[[تصنيف: cordova_plugin_device]]
+
[[تصنيف: cordova_plugin_device]]
تُعرّف هذه الإضافة كائنًا عامًّا <code>device</code>، والذي يوفر معلومات حول عتاد وبرامج الجهاز. على الرغم من أن الكائن موجود في النطاق العام (global scope)، إلا أنه لن يكون متوفرًا إلا بعد إطلاق الحدث <code>deviceready</code>.  
+
تُعرّف إضافة حالة الجهاز (<code>cordova-plugin-device</code>) كائنًا عامًّا <code>device</code>، والذي يوفر معلومات حول عتاد وبرامج الجهاز. على الرغم من أن الكائن موجود في النطاق العام (global scope)، إلا أنه لن يكون متوفرًا إلا بعد إطلاق الحدث <code>deviceready</code>.<syntaxhighlight lang="javascript">document.addEventListener("deviceready", onDeviceReady, false);
<syntaxhighlight lang="javascript">document.addEventListener("deviceready", onDeviceReady, false);
 
 
function onDeviceReady() {
 
function onDeviceReady() {
 
     console.log(device.cordova);
 
     console.log(device.cordova);
 
}‎</syntaxhighlight>  
 
}‎</syntaxhighlight>  
 
الإبلاغ عن مشكلات في هذا الإضافة على [https://issues.apache.org/jira/issues/?jql=project%20%3D%20CB%20AND%20status%20in%20%28Open%2C%20%22In%20Progress%22%2C%20Reopened%29%20AND%20resolution%20%3D%20Unresolved%20AND%20component%20%3D%20%22Plugin%20Device%22%20ORDER%20BY%20priority%20DESC%2C%20summary%20ASC%2C%20updatedDate%20DESC Apache Cordova issue tracker]
 
  
 
== التثبيت ==  
 
== التثبيت ==  
<syntaxhighlight lang="javascript">cordova plugin add cordova-plugin-device‎</syntaxhighlight>  
+
<syntaxhighlight lang="console">cordova plugin add cordova-plugin-device‎</syntaxhighlight>  
  
== خاصيات ==  
+
== الخاصيات ==
* device.cordova  
+
===<code>device.cordova</code>===
*device.model
 
* device.platform
 
* device.uuid
 
* device.version
 
*device.manufacturer
 
* device.isVirtual
 
*device.serial
 
  
==device.cordova==
+
تعيد هذه الخاصية إصدار كوردوفا المُثبَّت على الجهاز.  
 
+
==== المنصات المدعومة ====  
الحصول على إصدار كوردوفا المُثبَّت على الجهاز.  
 
=== المنصات المدعومة ===  
 
 
*أندرويد  
 
*أندرويد  
 
*Browser  
 
*Browser  
سطر 34: سطر 22:
 
* OSX  
 
* OSX  
  
==device.model==  
+
===<code>device.model</code>===  
  
تعيد <code>device.model</code> اسم طراز الجهاز أو المنتج. يتم تعيين القيمة من قِبل الشركة المصنعة للجهاز، وقد تختلف بين مختلف إصدارات المنتج.  
+
تعيد الخاصية <code>device.model</code> اسم طراز الجهاز أو المنتج. يتم تعيين القيمة من قِبل الشركة المصنعة للجهاز، وقد تختلف بين مختلف إصدارات المنتج.  
=== المنصات المدعومة ===  
+
==== المنصات المدعومة ====  
 
*أندرويد  
 
*أندرويد  
 
*Browser  
 
*Browser  
سطر 43: سطر 31:
 
*ويندوز  
 
*ويندوز  
 
* OSX  
 
* OSX  
=== مثال سريع ===  
+
==== مثال سريع ====  
<syntaxhighlight lang="javascript">// Android:    Nexus One       returns "Passion" (Nexus One code name)
+
<syntaxhighlight lang="javascript">// Android:    Nexus One       (Nexus One اسم الجهاز) "Passion" تعاد القيمة
//            Motorola Droid  returns "voles"
+
//            Motorola Droid  "voles" تعاد القيمة
// BlackBerry: Torch 9800      returns "9800"
+
// BlackBerry: Torch 9800      "9800" تعاد القيمة
// Browser:    Google Chrome  returns "Chrome"
+
// Browser:    Google Chrome  "Chrome" تعاد القيمة
//            Safari          returns "Safari"
+
//            Safari          "Safari" تعاد القيمة
// iOS:    for the iPad Mini, returns iPad2,5; iPhone 5 is iPhone 5,1. See http://theiphonewiki.com/wiki/index.php?title=Models
+
// iOS:    for the iPad Mini, returns iPad2,5; iPhone 5 is iPhone 5,1. See
// OSX:                        returns "x86_64"
+
//          http://theiphonewiki.com/wiki/index.php?title=Models راجع الصفحة
 +
// OSX:                        "x86_64" تعيد القيمة
 
//
 
//
 
var model = device.model;‎</syntaxhighlight>  
 
var model = device.model;‎</syntaxhighlight>  
===ملاحظات خاصة بمنصة أندرويد ===  
+
====ملاحظات خاصة بمنصة أندرويد ====  
* في منصة أندرويد يُعاد اسم المنتج [http://developer.android.com/reference/android/os/Build.html#PRODUCT product name] بدلا من اسم الطراز [http://developer.android.com/reference/android/os/Build.html#MODEL model name]، والذي غالبا ما يكون اسم كود الإنتاج (production code). على سبيل المثال، يُعيد الهاتف Nexus One القيمة <code>Passion</code>، وبعبد Motorola Droid القيمة <code>voles</code>.  
+
* في منصة أندرويد، يُعاد [http://developer.android.com/reference/android/os/Build.html#PRODUCT اسم المنتج] بدلًا من [http://developer.android.com/reference/android/os/Build.html#MODEL اسم الطراز]، والذي غالبا ما يكون اسم كود الإنتاج (production code). على سبيل المثال، يُعيد الهاتف Nexus One القيمة <code>Passion</code>، فيما يعيد Motorola Droid القيمة <code>voles</code>.  
  
==device.platform==  
+
===<code>device.platform</code>===  
  
 
تعيد هذه الخاصية اسم نظام التشغيل الخاص بالجهاز.  
 
تعيد هذه الخاصية اسم نظام التشغيل الخاص بالجهاز.  
 
<syntaxhighlight lang="javascript">var string = device.platform;‎</syntaxhighlight>  
 
<syntaxhighlight lang="javascript">var string = device.platform;‎</syntaxhighlight>  
=== المنصات المدعومة ===  
+
==== المنصات المدعومة ====  
 
*أندرويد  
 
*أندرويد  
 
*Browser  
 
*Browser  
سطر 66: سطر 55:
 
*ويندوز  
 
*ويندوز  
 
* OSX  
 
* OSX  
=== مثال سريع ===  
+
==== مثال ====  
<syntaxhighlight lang="javascript">// Depending on the device, a few examples are:
+
<syntaxhighlight lang="javascript">// بحسب الجهاز، هذه بعض الأمثلة
 
//  - "Android"
 
//  - "Android"
 
//  - "BlackBerry 10"
 
//  - "BlackBerry 10"
سطر 77: سطر 66:
 
var devicePlatform = device.platform;‎</syntaxhighlight>  
 
var devicePlatform = device.platform;‎</syntaxhighlight>  
  
==device.uuid==  
+
===<code>device.uuid</code>===  
  
تعيد الخاصية المعرف الفريد العالمي للجهاز ([http://en.wikipedia.org/wiki/Universally_Unique_Identifier UUID]).  
+
تعيد الخاصية <code>uuid</code> المعرف الفريد العالمي للجهاز ([http://en.wikipedia.org/wiki/Universally_Unique_Identifier UUID]).  
 
<syntaxhighlight lang="javascript">var string = device.uuid;‎</syntaxhighlight>  
 
<syntaxhighlight lang="javascript">var string = device.uuid;‎</syntaxhighlight>  
===الوصف===  
+
====الوصف====  
  
يتم تحديد تفاصيل توليد قيمة المعرف الفريد العالمي للجهاز (UUID) من طرف الشركة المصنعة للجهاز، وتتعلق بمنصة للجهاز أو طرازه.  
+
يتم تحديد تفاصيل كيفية توليد قيمة المعرف الفريد العالمي للجهاز (UUID) من طرف الشركة المصنعة للجهاز، وتختلف حسب منصة الجهاز أو طرازه.  
=== المنصات المدعومة ===  
+
==== المنصات المدعومة ====  
 
*أندرويد  
 
*أندرويد  
 
*iOS  
 
*iOS  
 
*ويندوز  
 
*ويندوز  
 
* OSX  
 
* OSX  
=== مثال سريع ===  
+
==== مثال ====  
<syntaxhighlight lang="javascript">// Android: Returns a random 64-bit integer (as a string, again!)
+
<syntaxhighlight lang="javascript">// Android: يعاد عدد صحيح عشوائي من 64 بتة - على شكل سلسلة نصية
//          The integer is generated on the device's first boot
+
//          يُولد الجهاز عند أول تشغيل للجهاز
 
//
 
//
// BlackBerry: Returns the PIN number of the device
+
// BlackBerry: الخاص بالجهاز PIN يعاد العدد
//             This is a nine-digit unique integer (as a string, though!)
+
//               وهو عدد فريد مكون من 9 منازل عشرية - على شكل سلسلة نصية
 
//
 
//
// iPhone: (Paraphrased from the UIDevice Class documentation)
+
// iPhone: (UIDevice مستخلص من توثيق الصنف)
//         Returns the [UIDevice identifierForVendor] UUID which is unique and the same for all apps installed by the same vendor. However the UUID can be different if the user deletes all apps from the vendor and then reinstalls it.
+
// ابعاد المعرف الفريد العالمي للجهاز، والذي يبقى ثابتا على كل التطبيقات المُثبتة من
// Windows Phone 7 : Returns a hash of device+current user,
+
//  قبل البائع، لكن المعرف الفريد العالمي للجهاز  يمكن أن تختلف قيمته إن حذف المستخدم
// if the user is not defined, a guid is generated and will persist until the app is uninstalled
+
//  جميع التطبيقات الخاصة بالبائع ثم أعاد تثبيتها
// Tizen: returns the device IMEI (International Mobile Equipment Identity or IMEI is a number
+
// Windows Phone 7 : يعيد رمز تجزئة للمستخدم الحالي للجعاز ,
// unique to every GSM and UMTS mobile phone.
+
// إن لك يكن المستخدم محددا، سيولد المعرف الفريد العالمي للجهاز وسيبقى مخزنا إلى حين إزالة التطبيق
 +
// Tizen: الخاصة بالجهاز IMEI تعاد القيمة
 +
// International Mobile Equipment Identity = IMEI حيث
 +
// UMTS و GSM تبقى ثابتة لكل  أنظمة الاتصال
 
var deviceID = device.uuid;‎</syntaxhighlight>  
 
var deviceID = device.uuid;‎</syntaxhighlight>  
=== ملاحظات خاصة بمنصة iOS ===  
+
==== ملاحظات خاصة بمنصة iOS ====
 +
 
 +
يستخدم المعرف الفريد العالمي للجهاز <code>uuid</code> على منصة iOS الخاصية <code>identifierForVendor</code>. فقيمتها تبقى ثابتة على كل الأجهزة المُصنعة من قبل نفس الشركة، بيْد أنها تختلف بين الأجهزة المصنعة من بائعين مختلفين، وستتغير إذا تم حذف جميع التطبيقات القادمة من البائع، ثم أُعيد تثبيتها. ارجع إلى [https://developer.apple.com/library/ios/documentation/UIKit/Reference/UIDevice_Class/#//apple_ref/occ/instp/UIDevice/identifierForVendor هذه الصفحة] لمزيد من التفاصيل. 
  
يستخدم المعرف الفريد العالمي للجهاز <code>uuid</code> على منصة iOS الخاصية identifierForVendor. فقيمتها واحدة لكل جهاز من الأجهزة المُصنعة من قبل نفس الشركة، ولكنها قيمتها تختلف بين الأجهزة المصنعة من بائعين مختلفين وستتغير إذا تم حذف جميع التطبيقات القادمة من البائع ثم إعادة تثبيتها. ارجع إلى هذه الصفحة [https://developer.apple.com/library/ios/documentation/UIKit/Reference/UIDevice_Class/#//apple_ref/occ/instp/UIDevice/identifierForVendor here] لمزيد من التفاصيل. ستكون قيمة UUID هي نفسها إذا استعيد التطبيق من نسخة احتياطية أو من السحابة iCloud لأنها تُحفظ في التفضيلات. الذين يستخدمون إصدارات قديمة من هذه الإضافة سيضلون يتلقون نفس قيمة UUID السابق المُولّد بوسائل أخرى، إذ أنه سيُسترد من التفضيلات.  
+
ستكون قيمة UUID هي نفسها إذا استعيد التطبيق من نسخة احتياطية أو من السحابة iCloud، لأنها تُحفظ في التفضيلات. الذين يستخدمون إصدارات قديمة من هذه الإضافة سيتلقّون نفس قيمة UUID السابقة المُولّدة بالوسائل الأخرى، إذ أنها ستُسترد من التفضيلات.  
=== ملاحظات خاصة بمنصة OSX ===  
+
==== ملاحظات خاصة بمنصة OSX ====  
  
يتم إنشاء <code>uuid</code> على منصة OSX تلقائيًا إذا لم يكن موجودًا بعد، وسيُخزّن في <code>standardUserDefaults</code> في الخاصية <code>CDVUUID</code>.  
+
يتم إنشاء <code>uuid</code> على منصة OSX تلقائيًا إذا لم تكن موجودةً بعد، وستُخزّن في <code>standardUserDefaults</code> في الخاصية <code>CDVUUID</code>.  
  
==device.version==  
+
===<code>device.version</code>===  
  
 
تعيد هذه الخاصية إصدار نظام التشغيل.  
 
تعيد هذه الخاصية إصدار نظام التشغيل.  
 
<syntaxhighlight lang="javascript">var string = device.version;‎</syntaxhighlight>  
 
<syntaxhighlight lang="javascript">var string = device.version;‎</syntaxhighlight>  
=== المنصات المدعومة ===  
+
==== المنصات المدعومة ====  
 
*أندرويد 2.1 وما بعده  
 
*أندرويد 2.1 وما بعده  
 
*Browser  
 
*Browser  
سطر 120: سطر 114:
 
*ويندوز  
 
*ويندوز  
 
* OSX  
 
* OSX  
=== مثال سريع ===  
+
==== مثال ====  
 
<syntaxhighlight lang="javascript">// Android:    Froyo OS would return "2.2"
 
<syntaxhighlight lang="javascript">// Android:    Froyo OS would return "2.2"
 
//            Eclair OS would return "2.1", "2.0.1", or "2.0"
 
//            Eclair OS would return "2.1", "2.0.1", or "2.0"

مراجعة 11:29، 14 ديسمبر 2018



تُعرّف إضافة حالة الجهاز (cordova-plugin-device) كائنًا عامًّا device، والذي يوفر معلومات حول عتاد وبرامج الجهاز. على الرغم من أن الكائن موجود في النطاق العام (global scope)، إلا أنه لن يكون متوفرًا إلا بعد إطلاق الحدث deviceready.

document.addEventListener("deviceready", onDeviceReady, false);
function onDeviceReady() {
    console.log(device.cordova);
}

التثبيت

cordova plugin add cordova-plugin-device‎

الخاصيات

device.cordova

تعيد هذه الخاصية إصدار كوردوفا المُثبَّت على الجهاز.

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

  • أندرويد
  • Browser
  • iOS
  • ويندوز
  • OSX

device.model

تعيد الخاصية device.model اسم طراز الجهاز أو المنتج. يتم تعيين القيمة من قِبل الشركة المصنعة للجهاز، وقد تختلف بين مختلف إصدارات المنتج.

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

  • أندرويد
  • Browser
  • iOS
  • ويندوز
  • OSX

مثال سريع

// Android:    Nexus One        (Nexus One اسم الجهاز) "Passion" تعاد القيمة
//             Motorola Droid  "voles" تعاد القيمة
// BlackBerry: Torch 9800      "9800" تعاد القيمة
// Browser:    Google Chrome   "Chrome" تعاد القيمة
//             Safari          "Safari" تعاد القيمة
// iOS:     for the iPad Mini, returns iPad2,5; iPhone 5 is iPhone 5,1. See
//          http://theiphonewiki.com/wiki/index.php?title=Models راجع الصفحة 
// OSX:                        "x86_64" تعيد القيمة
//
var model = device.model;

ملاحظات خاصة بمنصة أندرويد

  • في منصة أندرويد، يُعاد اسم المنتج بدلًا من اسم الطراز، والذي غالبا ما يكون اسم كود الإنتاج (production code). على سبيل المثال، يُعيد الهاتف Nexus One القيمة Passion، فيما يعيد Motorola Droid القيمة voles.

device.platform

تعيد هذه الخاصية اسم نظام التشغيل الخاص بالجهاز.

var string = device.platform;

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

  • أندرويد
  • Browser
  • iOS
  • ويندوز
  • OSX

مثال

// بحسب الجهاز، هذه بعض الأمثلة
//   - "Android"
//   - "BlackBerry 10"
//   - "browser"
//   - "iOS"
//   - "WinCE"
//   - "Tizen"
//   - "Mac OS X"
var devicePlatform = device.platform;

device.uuid

تعيد الخاصية uuid المعرف الفريد العالمي للجهاز (UUID).

var string = device.uuid;

الوصف

يتم تحديد تفاصيل كيفية توليد قيمة المعرف الفريد العالمي للجهاز (UUID) من طرف الشركة المصنعة للجهاز، وتختلف حسب منصة الجهاز أو طرازه.

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

  • أندرويد
  • iOS
  • ويندوز
  • OSX

مثال

// Android: يعاد عدد صحيح عشوائي من 64 بتة - على شكل سلسلة نصية
//          يُولد الجهاز عند أول تشغيل للجهاز
//
// BlackBerry: الخاص بالجهاز PIN  يعاد العدد
//               وهو عدد فريد مكون من 9 منازل عشرية - على شكل سلسلة نصية
//
// iPhone: (UIDevice  مستخلص من توثيق الصنف)
//  ابعاد المعرف الفريد العالمي للجهاز، والذي يبقى ثابتا على كل التطبيقات المُثبتة من 
//  قبل البائع، لكن المعرف الفريد العالمي للجهاز  يمكن أن تختلف قيمته إن حذف المستخدم
//  جميع التطبيقات الخاصة بالبائع ثم أعاد تثبيتها
// Windows Phone 7 : يعيد رمز تجزئة للمستخدم الحالي للجعاز ,
// إن لك يكن المستخدم محددا، سيولد المعرف الفريد العالمي للجهاز وسيبقى مخزنا إلى حين إزالة التطبيق
// Tizen: الخاصة بالجهاز IMEI تعاد القيمة
// International Mobile Equipment Identity = IMEI حيث 
// UMTS و GSM تبقى ثابتة لكل  أنظمة الاتصال 
var deviceID = device.uuid;

ملاحظات خاصة بمنصة iOS

يستخدم المعرف الفريد العالمي للجهاز uuid على منصة iOS الخاصية identifierForVendor. فقيمتها تبقى ثابتة على كل الأجهزة المُصنعة من قبل نفس الشركة، بيْد أنها تختلف بين الأجهزة المصنعة من بائعين مختلفين، وستتغير إذا تم حذف جميع التطبيقات القادمة من البائع، ثم أُعيد تثبيتها. ارجع إلى هذه الصفحة لمزيد من التفاصيل.

ستكون قيمة UUID هي نفسها إذا استعيد التطبيق من نسخة احتياطية أو من السحابة iCloud، لأنها تُحفظ في التفضيلات. الذين يستخدمون إصدارات قديمة من هذه الإضافة سيتلقّون نفس قيمة UUID السابقة المُولّدة بالوسائل الأخرى، إذ أنها ستُسترد من التفضيلات.

ملاحظات خاصة بمنصة OSX

يتم إنشاء uuid على منصة OSX تلقائيًا إذا لم تكن موجودةً بعد، وستُخزّن في standardUserDefaults في الخاصية CDVUUID.

device.version

تعيد هذه الخاصية إصدار نظام التشغيل.

var string = device.version;

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

  • أندرويد 2.1 وما بعده
  • Browser
  • iOS
  • ويندوز
  • OSX

مثال

// Android:    Froyo OS would return "2.2"
//             Eclair OS would return "2.1", "2.0.1", or "2.0"
//             Version can also return update level "2.1-update1"
//
// BlackBerry: Torch 9800 using OS 6.0 would return "6.0.0.600"
//
// Browser:    Returns version number for the browser
//
// iPhone:     iOS 3.2 returns "3.2"
//
// Windows Phone 7: returns current OS version number, ex. on Mango returns 7.10.7720
// Windows 8: return the current OS version, ex on Windows 8.1 returns 6.3.9600.16384
// Tizen: returns "TIZEN_20120425_2"
// OSX:        El Capitan would return "10.11.2"
//
var deviceVersion = device.version;

device.manufacturer

تعيد هذه الخاصية اسم الشركة المصنعة للجهاز.

var string = device.manufacturer;

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

  • أندرويد
  • iOS
  • ويندوز

مثال سريع

// Android:    Motorola XT1032 would return "motorola"
// BlackBerry: returns "BlackBerry"
// iPhone:     returns "Apple"
//
var deviceManufacturer = device.manufacturer;

device.isVirtual

تحدد هذه الخاصية ما إذا كان الجهاز يعمل على جهاز محاكاة.

var isSim = device.isVirtual;

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

  • أندرويد 2.1 وما بعده
  • Browser
  • iOS
  • ويندوز
  • OSX

ملاحظات خاصة بمنصتي OSX و Browser

تعيد الخاصية isVirtual على منصتي OS X و Browser القيمة false دائمًا.

device.serial

تعيد هذه الخاصية الرقم التسلسلي للجهاز (SERIAL).

var string = device.serial;

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

  • أندرويد
  • OSX

مصادر