Device

Device

device オブジェクトはデバイスのハードウェアとソフトウェアの情報を表します。

プロパティ

変数の範囲

device オブジェクトは window オブジェクトに割り当てられます。グローバルスコープとして扱われます。

// 下記は同じ `device` オブジェクト
//
var phoneName = window.device.name;
var phoneName = device.name;

device.name

デバイスのモデル名を取得します。

var string = device.name;

詳細

device.name はデバイスのモデル名を返します。この値はデバイスの製造者によって設定されるため、同じモデルでも異なるバージョンで値が異なる場合があります。

サポートされているプラットフォーム

使用例

// Android:    Nexus One       Nexus OneのコードネームであるPassionを返します
//             Motorola Droid  volesを返します
// BlackBerry: Bold 8900       8900を返します
// iPhone:     iTunesでセットした名前を返します
//
var name = device.name;

詳細な使用例

<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01//EN"
                      "http://www.w3.org/TR/html4/strict.dtd">
<html>
  <head>
    <title>デバイスプロパティの使用例</title>

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

    // PhoneGapの読み込みを待機
    //
    function onLoad() {
        document.addEventListener("deviceready", onDeviceReady, false);
    }

    // PhoneGap準備完了
    //
    function onDeviceReady() {
        var element = document.getElementById('deviceProperties');

        element.innerHTML = 'デバイス名: '     + device.name     + '<br />' + 
                            'PhoneGap: ' + device.phonegap + '<br />' + 
                            'プラットフォーム: ' + device.platform + '<br />' + 
                            'UUID: '     + device.uuid     + '<br />' + 
                            'バージョン: '  + device.version  + '<br />';
    }

    </script>
  </head>
  <body onload="onLoad()">
    <p id="deviceProperties">Loading device properties...</p>
  </body>
</html>

Android に関する注意点

iPhone に関する注意点


device.phonegap

現在使用しているPhoneGapのバージョン情報を表します。

var string = device.phonegap;

概要

device.phonegap は現在実行中のPhoneGapのバージョン情報を取得します。

サポートされているプラットフォーム

簡単な例

var name = device.phonegap;

詳細な例

<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01//EN"
                      "http://www.w3.org/TR/html4/strict.dtd">
<html>
  <head>
    <title>デバイスプロパティの使用例</title>

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

    // PhoneGapの読み込み待機
    //
    function onLoad() {
        document.addEventListener("deviceready", onDeviceReady, false);
    }

    // PhoneGap準備完了
    //
    function onDeviceReady() {
        var element = document.getElementById('deviceProperties');

        element.innerHTML = 'デバイス名: '     + device.name     + '<br />' + 
                            'PhoneGap: ' + device.phonegap + '<br />' + 
                            'プラットフォーム: ' + device.platform + '<br />' + 
                            'UUID: '     + device.uuid     + '<br />' + 
                            'バージョン: '  + device.version  + '<br />';
    }

    </script>
  </head>
  <body onload="onLoad()">
    <p id="deviceProperties">デバイスプロパティーを読み込み中...</p>
  </body>
</html>

device.platform

デバイスのOS名を取得します。

var string = device.platform;

サポートされているプラットフォーム

使用例

// Depending on the device, a few examples are:
//   - "Android"
//   - "BlackBerry"
//   - "iPhone"
//   - "webOS"
//
var devicePlatform = device.platform;

詳細な使用例

<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01//EN"
                      "http://www.w3.org/TR/html4/strict.dtd">
<html>
  <head>
    <title>デバイスプロパティの使用例</title>

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

    // PhoneGapの読み込みを待機
    //
    function onLoad() {
        document.addEventListener("deviceready", onDeviceReady, false);
    }

    // PhoneGap準備完了
    //
    function onDeviceReady() {
        var element = document.getElementById('deviceProperties');

        element.innerHTML = 'デバイス名: '     + device.name     + '<br />' + 
                            'PhoneGap: ' + device.phonegap + '<br />' + 
                            'プラットフォーム: ' + device.platform + '<br />' + 
                            'UUID: '     + device.uuid     + '<br />' + 
                            'バージョン: '  + device.version  + '<br />';
    }

    </script>
  </head>
  <body onload="onLoad()">
    <p id="deviceProperties">デバイスプロパティーを読み込み中...</p>
  </body>
</html>

iPhone に関する注意点

全てのデバイスで iPhone を返します。AppleはiPhoneのOSの名称をiOSに変更したので、この返り値は厳密には正確でないという点に注意してください。

BlackBerry に関する注意点

OS名ではなくプラットフォームのバージョンを返す可能性があります。(例:Storm2 9550の場合、'2.13.0.95'を返すことがあります)


device.uuid

デバイスの固有ID (Universally Unique Identifier - UUID)を取得します。

var string = device.uuid;

詳細

UUIDの生成方法については、デバイスの製造者やプラットフォームにより決定されます。

サポートされているプラットフォーム

使用例

// Android: ランダムな64ビットの数値を文字列として返却します。
//          数値はデバイスの最初の起動時に生成されます。
//
// BlackBerry: デバイスのPIN番号を返却します。
//             この番号は9桁のユニークな数字となります。
//
// iPhone: UIDeviceクラスドキュメントに記載されている通り
//         ハードウェアIDに基づくハッシュ値を返却します。
//         デバイスに固有でユーザーアカウントとは
//         リンクされていません。
//
var deviceID = device.uuid;

詳細な使用例

<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01//EN"
                      "http://www.w3.org/TR/html4/strict.dtd">
<html>
  <head>
    <title>デバイスプロパティーの使用例</title>

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

    // PhoneGapの読み込みを待機
    //
    function onLoad() {
        document.addEventListener("deviceready", onDeviceReady, false);
    }

    // PhoneGap準備完了
    //
    function onDeviceReady() {
        var element = document.getElementById('deviceProperties');

        element.innerHTML = 'デバイス名: '     + device.name     + '<br />' + 
                            'PhoneGap: ' + device.phonegap + '<br />' + 
                            'プラットフォーム: ' + device.platform + '<br />' + 
                            'UUID: '     + device.uuid     + '<br />' + 
                            'バージョン: '  + device.version  + '<br />';
    }

    </script>
  </head>
  <body onload="onLoad()">
    <p id="deviceProperties">デバイスプロパティーを読み込み中...</p>
  </body>
</html>

device.version

OSのバージョンを取得します。

var string = device.version;

サポートされているプラットフォーム

使用例

// Android:    Froyoの場合は2.2を返却
//             Eclaiの場合は2.0、2.0.1、もしくは2.1を返却
//             アップデートが行われると 2.1-update1 のように返却
//
// BlackBerry: OS 4.6を搭載したBold 9000の場合4.6.0.282を返却
//
// iPhone:     iOS 3.2は3.2を返却
//
var deviceVersion = device.version;

詳細な使用例

<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01//EN"
                      "http://www.w3.org/TR/html4/strict.dtd">
<html>
  <head>
    <title>デバイスプロパティの使用例</title>

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

    // PhoneGapの読み込みを待機
    //
    function onLoad() {
        document.addEventListener("deviceready", onDeviceReady, false);
    }

    // PhoneGap準備完了
    //
    function onDeviceReady() {
        var element = document.getElementById('deviceProperties');

        element.innerHTML = 'デバイス名: '     + device.name     + '<br />' + 
                            'PhoneGap: ' + device.phonegap + '<br />' + 
                            'プラットフォーム: ' + device.platform + '<br />' + 
                            'UUID: '     + device.uuid     + '<br />' + 
                            'バージョン: '  + device.version  + '<br />';
    }

    </script>
  </head>
  <body onload="onLoad()">
    <p id="deviceProperties">デバイスプロパティーの読み込み中...</p>
  </body>
</html>