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

من موسوعة حسوب
لا ملخص تعديل
لا ملخص تعديل
سطر 1: سطر 1:
<noinclude>{{DISPLAYTITLE:إضافة حالة الجهاز في كوردوفا}}</noinclude>
<noinclude>{{DISPLAYTITLE:إضافة حالة الجهاز في كوردوفا}}</noinclude>
[[تصنيف: Cordova]]
[[تصنيف: Cordova]]
[[تصنيف: plugin]]
[[تصنيف: cordova_plugin_device]]
تُعرّف إضافة حالة الجهاز (<code>cordova-plugin-device</code>) كائنًا عامًّا <code>device</code>، والذي يوفر معلومات حول عتاد وبرامج الجهاز. على الرغم من أن الكائن موجود في النطاق العام (global scope)، إلا أنه لن يكون متوفرًا إلا بعد إطلاق الحدث <code>deviceready</code>.<syntaxhighlight lang="javascript">document.addEventListener("deviceready", onDeviceReady, false);
تُعرّف إضافة حالة الجهاز (<code>cordova-plugin-device</code>) كائنًا عامًّا <code>device</code>، والذي يوفر معلومات حول عتاد وبرامج الجهاز. على الرغم من أن الكائن موجود في النطاق العام (global scope)، إلا أنه لن يكون متوفرًا إلا بعد إطلاق الحدث <code>deviceready</code>.<syntaxhighlight lang="javascript">document.addEventListener("deviceready", onDeviceReady, false);
function onDeviceReady() {
function onDeviceReady() {
سطر 8: سطر 6:
}‎</syntaxhighlight>  
}‎</syntaxhighlight>  


== التثبيت ==  
== التثبيت ==
<syntaxhighlight lang="console">cordova plugin add cordova-plugin-device‎</syntaxhighlight>  
يمكنك تثبيت هذه الإضافة عبر الأمر التالي:<syntaxhighlight lang="console">cordova plugin add cordova-plugin-device‎</syntaxhighlight>  


== الخاصيات ==
== الخاصيات ==
سطر 24: سطر 22:
===<code>device.model</code>===  
===<code>device.model</code>===  


تعيد الخاصية <code>device.model</code> اسم طراز الجهاز أو المنتج. يتم تعيين القيمة من قِبل الشركة المصنعة للجهاز، وقد تختلف بين مختلف إصدارات المنتج.  
تعيد الخاصية <code>device.model</code> اسم طراز الجهاز أو المنتج. يتم تعيين القيمة من قِبل الشركة المصنعة للجهاز، وقد تختلف بين إصدارات المنتج.  
==== المنصات المدعومة ====  
==== المنصات المدعومة ====  
*أندرويد  
*أندرويد  
سطر 31: سطر 29:
*ويندوز  
*ويندوز  
* OSX  
* OSX  
==== مثال سريع ====  
==== مثال ====  
<syntaxhighlight lang="javascript">// Android:    Nexus One        (Nexus One اسم الجهاز) "Passion" تعاد القيمة
<syntaxhighlight lang="javascript">// Android:    Nexus One        (Nexus One اسم الجهاز) "Passion" تعاد القيمة
//            Motorola Droid  "voles" تعاد القيمة
//            Motorola Droid  "voles" تعاد القيمة
سطر 39: سطر 37:
// iOS:    for the iPad Mini, returns iPad2,5; iPhone 5 is iPhone 5,1. See
// iOS:    for the iPad Mini, returns iPad2,5; iPhone 5 is iPhone 5,1. See
//          http://theiphonewiki.com/wiki/index.php?title=Models راجع الصفحة  
//          http://theiphonewiki.com/wiki/index.php?title=Models راجع الصفحة  
// OSX:                        "x86_64" تعيد القيمة
// OSX:                        "x86_64" تعاد القيمة
//
//
var model = device.model;‎</syntaxhighlight>  
var model = device.model;‎</syntaxhighlight>  
سطر 47: سطر 45:
===<code>device.platform</code>===  
===<code>device.platform</code>===  


تعيد هذه الخاصية اسم نظام التشغيل الخاص بالجهاز.  
تعيد هذه الخاصية اسم نظام التشغيل المُستخدم على الجهاز.  
<syntaxhighlight lang="javascript">var string = device.platform;‎</syntaxhighlight>  
<syntaxhighlight lang="javascript">var string = device.platform;‎</syntaxhighlight>  
==== المنصات المدعومة ====  
==== المنصات المدعومة ====  
سطر 86: سطر 84:
//
//
// iPhone: (UIDevice  مستخلص من توثيق الصنف)
// iPhone: (UIDevice  مستخلص من توثيق الصنف)
//  ابعاد المعرف الفريد العالمي للجهاز، والذي يبقى ثابتا على كل التطبيقات المُثبتة من  
//  يعاد المعرف الفريد العالمي للجهاز، والذي يبقى ثابتا على كل التطبيقات المُثبتة من  
//  قبل البائع، لكن المعرف الفريد العالمي للجهاز  يمكن أن تختلف قيمته إن حذف المستخدم
//  قبل البائع، لكن المعرف الفريد العالمي للجهاز  يمكن أن تختلف قيمته إن حذف المستخدم
//  جميع التطبيقات الخاصة بالبائع ثم أعاد تثبيتها
//  جميع التطبيقات الخاصة بالبائع ثم أعاد تثبيتها
// Windows Phone 7 : يعيد رمز تجزئة للمستخدم الحالي للجعاز ,
// Windows Phone 7 : يعيد رمز تجزئة للمستخدم الحالي للجهاز ,
// إن لك يكن المستخدم محددا، سيولد المعرف الفريد العالمي للجهاز وسيبقى مخزنا إلى حين إزالة التطبيق
// إن لم يكن المستخدم محددا، سيولد المعرف الفريد العالمي للجهاز وسيبقى مخزنا إلى حين إزالة التطبيق
// Tizen: الخاصة بالجهاز IMEI تعاد القيمة
// Tizen: الخاصة بالجهاز IMEI تعاد القيمة
// International Mobile Equipment Identity = IMEI حيث  
// الهوية الدولية للأجهزة المتنقلة = IMEI حيث  
// UMTS و GSM تبقى ثابتة لكل  أنظمة الاتصال  
// UMTS و GSM تبقى ثابتة لكل  أنظمة الاتصال  
var deviceID = device.uuid;‎</syntaxhighlight>  
var deviceID = device.uuid;‎</syntaxhighlight>  
سطر 99: سطر 97:
يستخدم المعرف الفريد العالمي للجهاز <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 الخاصية <code>identifierForVendor</code>. فقيمتها تبقى ثابتة على كل الأجهزة المُصنعة من قبل نفس الشركة، بيْد أنها تختلف بين الأجهزة المصنعة من بائعين مختلفين، وستتغير إذا تم حذف جميع التطبيقات القادمة من البائع، ثم أُعيد تثبيتها. ارجع إلى [https://developer.apple.com/library/ios/documentation/UIKit/Reference/UIDevice_Class/#//apple_ref/occ/instp/UIDevice/identifierForVendor هذه الصفحة] لمزيد من التفاصيل.   


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


سطر 125: سطر 123:
// iPhone:    iOS 3.2 => "3.2"
// iPhone:    iOS 3.2 => "3.2"
//
//
// Windows Phone 7: Mango  يعاد إصدار نظام التشغيل الحاي، مثال، على منصة  
// Windows Phone 7: Mango  يعاد إصدار نظام التشغيل الحالي، مثلا، على منصة  
// ستعاد القيمة 7.10.7720
// ستعاد القيمة 7.10.7720
// Windows 8:  يعاد إصدار نظام التشغيل الحاي، مثال، على منصة ويندوز 8.1 ستعاد
// Windows 8:  يعاد إصدار نظام التشغيل الحالي، مثلا، على منصة ويندوز 8.1 ستعاد
//  6.3.9600.16384 القيمة  
//  6.3.9600.16384 القيمة  
// Tizen: "TIZEN_20120425_2" تعاد القيمة
// Tizen: "TIZEN_20120425_2" تعاد القيمة
سطر 173: سطر 171:
== انظر أيضا ==
== انظر أيضا ==
* [[Cordova/plugins|دليل تطوير الإضافات في كوردوفا]]
* [[Cordova/plugins|دليل تطوير الإضافات في كوردوفا]]
* صفحة [[Cordova|كوردوفا]] الرئيسية.


==مصادر==
==مصادر==
*[https://cordova.apache.org/docs/en/latest/reference/cordova-plugin-device/index.html صفحة cordova-plugin-device في توثيق كوردوفا الرسمي.]
*[https://cordova.apache.org/docs/en/latest/reference/cordova-plugin-device/index.html صفحة cordova-plugin-device في توثيق كوردوفا الرسمي.]

مراجعة 12:07، 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 تعاد القيمة
// الهوية الدولية للأجهزة المتنقلة = 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 => n "2.2"
//             Eclair OS => "2.1", "2.0.1",  "2.0"
//              "2.1-update1" - يمكن أن يعاد مستوى التحديث 
//
// BlackBerry: "6.0.0.600" سيعيد  OS 6.0 الذي يستخدم Torch 9800 
//
// Browser:    يعاد رقم إصدار المتصفح
//
// iPhone:     iOS 3.2 => "3.2"
//
// Windows Phone 7: Mango  يعاد إصدار نظام التشغيل الحالي، مثلا، على منصة 
// ستعاد القيمة 7.10.7720
// Windows 8:  يعاد إصدار نظام التشغيل الحالي، مثلا، على منصة ويندوز 8.1 ستعاد
//  6.3.9600.16384 القيمة 
// Tizen: "TIZEN_20120425_2" تعاد القيمة
// OSX:        El Capitan => "10.11.2"
//
var deviceVersion = device.version;

device.manufacturer

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

var string = device.manufacturer;

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

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

مثال

// Android:    Motorola XT1032 => "motorola"
// BlackBerry: => "BlackBerry"
// iPhone:     => "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

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

var string = device.serial;

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

  • أندرويد
  • OSX

انظر أيضا

مصادر