Device
device
オブジェクトはデバイスのハードウェアとソフトウェアの情報を表します。
プロパティ
変数の範囲
device
オブジェクトは window
オブジェクトに割り当てられます。グローバルスコープとして扱われます。
// 下記は同じ `device` オブジェクト
//
var phoneName = window.device.name;
var phoneName = device.name;
device.name
デバイスのモデル名を取得します。
var string = device.name;
詳細
device.name
はデバイスのモデル名を返します。この値はデバイスの製造者によって設定されるため、同じモデルでも異なるバージョンで値が異なる場合があります。
サポートされているプラットフォーム
- Android
- BlackBerry
- BlackBerry WebWorks (OS 5.0以上)
- iPhone
使用例
// 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 に関する注意点
- [モデル名] (http://developer.android.com/reference/android/os/Build.html#MODEL) の代わりに [製品名] (http://developer.android.com/reference/android/os/Build.html#PRODUCT) を取得します。
- 製品名はほとんどの場合、生産時のコードネームとなります。
- 例: Nexus OneはPassionを返し、Motorola Droid はvolesを返します。
iPhone に関する注意点
- [モデル名] (http://developer.apple.com/iphone/library/documentation/uikit/reference/UIDeviceClass/Reference/UIDevice.html#//appleref/doc/uid/TP40006902-CH3-SW1) の代わりに [デバイスのカスタムネーム] (http://developer.apple.com/iphone/library/documentation/uikit/reference/UIDeviceClass/Reference/UIDevice.html#//appleref/doc/uid/TP40006902-CH3-SW13) を取得します。
- カスタムネームはiTunesのオーナーによって設定されます。
device.phonegap
現在使用しているPhoneGapのバージョン情報を表します。
var string = device.phonegap;
概要
device.phonegap
は現在実行中のPhoneGapのバージョン情報を取得します。
サポートされているプラットフォーム
- Android
- BlackBerry
- BlackBerry WebWorks (OS 5.0 以上)
- iPhone
簡単な例
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;
サポートされているプラットフォーム
- Android
- BlackBerry
- BlackBerry WebWorks (OS 5.0 以上)
- iPhone
使用例
// 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
- BlackBerry
- BlackBerry WebWorks (OS 5.0 以上)
- iPhone
使用例
// 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 2.1+
- BlackBerry
- BlackBerry WebWorks (OS 5.0 以上)
- iPhone
使用例
// 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>