Device

Device

L'objet device fournit des informations sur les aspects matériels et logiciels du mobile.

Propriétés

Portée de la variable

Puisque device est attaché à l'objet window, il a implicitement une portée globale.

// Ces deux exemples pointent vers le même `device`
//
var phoneName = window.device.name;
var phoneName = device.name;

device.name

Récupère le nom de modèle du mobile.

var string = device.name;

Description

device.name retourne le nom du modèle du mobile ou du produit. Cette valeur est renseignée par le constructeur et peut différer d'une version à une autre d'un même produit.

Plateformes supportées

Exemple rapide

// Android:    Nexus One       retourne "Passion" (nom de code de Nexus One)
//             Motorola Droid  retourne "voles"
// BlackBerry: Bold 8900       retourne "8900"
// iOS:        Tous modèles    retourne le nom défini via iTunes, par exemple "iPhone de Joe"
//
var name = device.name;

Exemple complet

<!DOCTYPE html>
<html>
  <head>
    <title>Exemple Device</title>

    <script type="text/javascript" charset="utf-8" src="phonegap-1.1.0.js"></script>
    <script type="text/javascript" charset="utf-8">

    // Attendre que PhoneGap soit prêt
    //
    document.addEventListener("deviceready", onDeviceReady, false);

    // PhoneGap est prêt
    //
    function onDeviceReady() {
        var element = document.getElementById('deviceProperties');

        element.innerHTML = 'Device Name: '     + device.name     + '<br />' + 
                            'Device PhoneGap: ' + device.phonegap + '<br />' + 
                            'Device Platform: ' + device.platform + '<br />' + 
                            'Device UUID: '     + device.uuid     + '<br />' + 
                            'Device Version: '  + device.version  + '<br />';
    }

    </script>
  </head>
  <body>
    <p id="deviceProperties">Chargement des propriétés du mobile...</p>
  </body>
</html>

Singularités Android

Singularités iOS


device.phonegap

Récupère la version de PhoneGap de l'application.

var string = device.phonegap;

Description

device.phonegap retourne la version de PhoneGap de l'application.

Plateformes supportées

Exemple rapide

var name = device.phonegap;

Exemple complet

<!DOCTYPE html>
<html>
  <head>
    <title>Exemple Device</title>

    <script type="text/javascript" charset="utf-8" src="phonegap-1.1.0.js"></script>
    <script type="text/javascript" charset="utf-8">

    // Attendre que PhoneGap soit prêt
    //
    document.addEventListener("deviceready", onDeviceReady, false);

    // PhoneGap est prêt
    //
    function onDeviceReady() {
        var element = document.getElementById('deviceProperties');

        element.innerHTML = 'Device Name: '     + device.name     + '<br />' + 
                            'Device PhoneGap: ' + device.phonegap + '<br />' + 
                            'Device Platform: ' + device.platform + '<br />' + 
                            'Device UUID: '     + device.uuid     + '<br />' + 
                            'Device Version: '  + device.version  + '<br />';
    }

    </script>
  </head>
  <body>
    <p id="deviceProperties">Chargement des propriétés du mobile...</p>
  </body>
</html>

device.platform

Récupère le nom du système d'exploitation du mobile.

var string = device.platform;

Plateformes supportées

Exemple rapide

// Exemples de valeurs retournées en fonction du mobile :
//   - "Android"
//   - "BlackBerry"
//   - "iPhone"
//   - "webOS"
//   - "WinCE"
var devicePlatform = device.platform;

Exemple complet

<!DOCTYPE html>
<html>
  <head>
    <title>Exemple Device</title>

    <script type="text/javascript" charset="utf-8" src="phonegap-1.1.0.js"></script>
    <script type="text/javascript" charset="utf-8">

    // Attendre que PhoneGap soit prêt
    //
    document.addEventListener("deviceready", onDeviceReady, false);

    // PhoneGap est prêt
    //
    function onDeviceReady() {
        var element = document.getElementById('deviceProperties');

        element.innerHTML = 'Device Name: '     + device.name     + '<br />' + 
                            'Device PhoneGap: ' + device.phonegap + '<br />' + 
                            'Device Platform: ' + device.platform + '<br />' + 
                            'Device UUID: '     + device.uuid     + '<br />' + 
                            'Device Version: '  + device.version  + '<br />';
    }

    </script>
  </head>
  <body>
    <p id="deviceProperties">Chargement des propriétés du mobile...</p>
  </body>
</html>

Singularités iOS

C'est le nom du produit (iPhone, iPad ou iPod touch) qui est retourné et non le nom du système d'exploitation, à savoir iOS.

Singularités BlackBerry

Sur certains mobiles, c'est la version de la plateforme qui est retournée et non le nom du système d'exploitation. Par exemple, le Storm2 9550 retourne une valeur du style '2.13.0.95'.


device.uuid

Récupère le Universally Unique Identifier (UUID) du mobile.

var string = device.uuid;

Description

Les détails sur la façon dont un UUID est généré sont déterminés par le fabricant et spécifiques à la plateforme ou au modèle de l'appareil.

Plateformes supportées

Exemple rapide

// Android: Retourne un entier aléatoire de 64 bits (sous forme de chaîne de caractères !)
//          Cet entier est généré au premier démarrage du mobile.
//
// BlackBerry: Retourne le numéro PIN du mobile.
//             Il s'agit d'un entier unique à neuf chiffres (mais sous forme de chaîne de caractères !)
//
// iPhone: (Tiré de la documentation de la classe UIDevice)
//         Retourne une chaîne de hachage produite à partir de multiples identifiants matériels.
//         Son unicité est garantie pour chaque mobile et ne peut être liée au compte utilisateur.
// Windows Phone 7 : Retourne un hachage du mobile+utilisateur,
// si l'utilisateur n'est pas défini, un GUID est généré et sera conservé jusqu'à ce que l'application soit désinstallée.
// 
var deviceID = device.uuid;

Exemple complet

<!DOCTYPE html>
<html>
  <head>
    <title>Exemple Device</title>

    <script type="text/javascript" charset="utf-8" src="phonegap-1.1.0.js"></script>
    <script type="text/javascript" charset="utf-8">

    // Attendre que PhoneGap soit prêt
    //
    document.addEventListener("deviceready", onDeviceReady, false);

    // PhoneGap est prêt
    //
    function onDeviceReady() {
        var element = document.getElementById('deviceProperties');

        element.innerHTML = 'Device Name: '     + device.name     + '<br />' + 
                            'Device PhoneGap: ' + device.phonegap + '<br />' + 
                            'Device Platform: ' + device.platform + '<br />' + 
                            'Device UUID: '     + device.uuid     + '<br />' + 
                            'Device Version: '  + device.version  + '<br />';
    }

    </script>
  </head>
  <body>
    <p id="deviceProperties">Chargement des propriétés du mobile...</p>
  </body>
</html>

device.version

Récupère la version du système d'exploitation.

var string = device.version;

Plateformes supportées

Exemple rapide

// Android:    Froyo retourne "2.2"
//             Eclair retourne "2.1", "2.0.1", or "2.0"
//             La version peut aussi retourner la mise à jour "2.1-update1" 
//
// BlackBerry: Bold 9000 sous OS 4.6 retourne "4.6.0.282"
//
// iOS:        iOS 3.2 retourne "3.2"
//
// Windows Phone 7: retourne le numéro de version courant du système d'exploitation, par exemple "7.10.7720" sous Mango.
var deviceVersion = device.version;

Exemple complet

<!DOCTYPE html>
<html>
  <head>
    <title>Exemple Device</title>

    <script type="text/javascript" charset="utf-8" src="phonegap-1.1.0.js"></script>
    <script type="text/javascript" charset="utf-8">

    // Attendre que PhoneGap soit prêt
    //
    document.addEventListener("deviceready", onDeviceReady, false);

    // PhoneGap est prêt
    //
    function onDeviceReady() {
        var element = document.getElementById('deviceProperties');

        element.innerHTML = 'Device Name: '     + device.name     + '<br />' + 
                            'Device PhoneGap: ' + device.phonegap + '<br />' + 
                            'Device Platform: ' + device.platform + '<br />' + 
                            'Device UUID: '     + device.uuid     + '<br />' + 
                            'Device Version: '  + device.version  + '<br />';
    }

    </script>
  </head>
  <body>
    <p id="deviceProperties">Chargement des propriétés du mobile...</p>
  </body>
</html>