Editor's DraftなAPI。仕様が大きく変わる可能性あり(2014/12/11)
Network Information API
回線の情報を取得したりイベントで色々したりするAPI
navigator.connectionに色々入ってる。
接続のタイプ
navigator.connection.typeにはどうやってインターネットに繋いでるかの情報が入っている
|type|
|bluetooth|
|callular|
|ethernet|
|none|
|wifi|
|wimax|
|other|
|unknown|
用途としては帯域幅の判定として使ってコンテンツを出し分けるとか、従量課金の回線もあるのでアラート出すとか。
typeがnoneなときはnavigator.onLineがfalseになる。
接続タイプの変更イベント
回線の変化が起こったときにtypechangeイベントが発生する。navigator.connectionのontypechangeもしくはaddEventListenerでイベントハンドリングする。
navigator.connection.ontypechange = function(e) {
console.log(e);
}
or
navigator.connection.addEventListener("typechange", function(e) {
console.log(e);
});
実装状況?
ChromiumとFirefox OSで実装あり。
Chrome 39.0.2171.71で試験運用版のウェブプラットフォームの機能を有効にするとnavigatorにconnectionが生える。
Chromeでは確認できなかったけどdownlinkMaxとかbandWidthとかのプロパティが今後生えるかも?