JavaScript
 Computer >> コンピューター >  >> プログラミング >> JavaScript

HTML5 Geolocation APIのPositionErrorオブジェクトが返すエラーコード一覧

HTML5のGeolocation APIを使用する際、位置情報の取得に失敗するとPositionErrorオブジェクトがエラーハンドラに渡されます。このオブジェクトには、エラーの原因を示すcodeプロパティと、詳細メッセージを含むmessageプロパティが格納されています。

codeプロパティには以下の4種類のエラーコードが定義されており、それぞれ対応する定数で比較することができます。

PositionErrorのエラーコード一覧

コード定数説明
0UNKNOWN_ERROR不明なエラーが発生したため、デバイスの位置情報を取得できませんでした。
1PERMISSION_DENIEDアプリケーションに位置情報サービス(Location Service)を使用する権限がないため、デバイスの位置情報を取得できませんでした。ユーザーがブラウザの許可ダイアログで拒否した場合などに発生します。
2POSITION_UNAVAILABLEデバイスの現在位置を特定できませんでした。GPSやWi-Fiなどの測位手段が利用できない状況で発生します。
3TIMEOUTtimeoutオプションで指定された最大待機時間内に位置情報を取得できませんでした。

エラー処理の実装例

以下は、getCurrentPosition()メソッドの第2引数にエラーコールバックを指定し、エラーコードに応じて処理を分岐させる基本的な例です。

navigator.geolocation.getCurrentPosition(
  function(position) {
    console.log('緯度: ' + position.coords.latitude);
    console.log('経度: ' + position.coords.longitude);
  },
  function(error) {
    switch (error.code) {
      case error.PERMISSION_DENIED:
        alert('位置情報の利用が許可されていません。');
        break;
      case error.POSITION_UNAVAILABLE:
        alert('現在位置を特定できませんでした。');
        break;
      case error.TIMEOUT:
        alert('位置情報の取得がタイムアウトしました。');
        break;
      default:
        alert('不明なエラーが発生しました。');
        break;
    }
  }
);

エラーコードを適切に判定することで、ユーザーに対してわかりやすいフィードバックを提供し、アプリケーションの信頼性を高めることができます。

  1. Windows 10でシステムイメージのバックアップに失敗する「0x807800C5」「0x80780081」エラーの対処法

    Windows 10でシステムイメージのバックアップを作成しようとした際に、エラーコード「0x807800C5」および「0x80780081」が表示されて操作が失敗することがあります。この記事では、この問題を迅速に解決するための最も効果的な対処法を詳しく解説します。 バックアップイメージの準備中に失敗した場合のエラーメッセージ この問題が発生すると、以下のような完全なエラーメッセージが表示されます。 システムイメージの作成バックアップに失敗しました。バックアップセット内のいずれかのボリュームについて、バックアップイメージの準備中にエラーが発生しました。(0x807800C5)追加情報:指定さ

  2. 【解決済み】システムイメージバックアップ作成時のエラー0x807800C5・0x80780081の対処法

    Windows 10でシステムイメージバックアップを作成しようとした際に、エラーコード0x807800C5および0x80780081が表示されて処理が失敗する場合があります。この記事では、この問題を迅速に解決するための最も効果的な対処法を紹介します。 「バックアップセット内のボリュームの1つのバックアップイメージを準備できませんでした」というエラーについて この問題が発生すると、以下のようなエラーメッセージが表示されます。 システム イメージの作成バックアップに失敗しました。バックアップ セット内のあるボリュームのバックアップ イメージを準備中にエラーが発生しました。(0x807800C5)追