今回の作成範囲
GPS携帯に送信したURLより位置情報を取得し、取得した緯度経度から逆ジオコーディングを行うことで地名を取得してDBに保存します。
投稿された情報をGoogle Maps上に展開してPC、携帯から閲覧できるようなPHPを作成します。
携帯電話でのGPS位置情報の取得
GPS対応携帯電話では各キャリアごとのGPS位置情報取得URLにアクセスすることでキャリアのGPSサーバを経由してブラウザを通して遷移先の画面でGPSによる位置情報を取得できます。
各キャリアでのGPS位置情報取得URLのフォーマット、返却されるパラメーターは以下の表のようになっています。
| キャリア | GPS位置情報取得URLの例 | 遷移先の画面で返却されるパラメーター |
| NTTドコモ | <a href="遷移先URL" lcs> | lat(緯度)、lon(経度)、geo(測地系)、x-acc(誤差レベル) |
| au | <a href="device:gpsone?url=遷移先URL&ver=1&datum=0&unit=0&acry=0&number=0> | lat(緯度)、lon(経度)、fm(測位モード)、time(時間) |
| ソフトバンクモバイル | <a href="location:gps?url=遷移先URL"> | pos(位置)、geo(測地系)、x-acr(測位精度) |
上記の表のように各キャリアでGPS位置情報取得URL、指定するパラメーター、GPS位置情報を返却するパラメーターは別々になっています。共通しているのはGPS位置情報取得後に戻ってくるURLを指定できるという点のみです。
携帯電話でGPS位置情報を取得する流れのイメージは以下の図のようになります。

3キャリアの違いを超えてGPS位置情報を取得する
前項のとおり現時点で携帯3キャリアのGPS取得用のURLはそれぞれ違う形式になっています。そのため、携帯のGPS機能を使って位置情報を取得するためには3キャリア向けに異なったコードを書く必要があります。
Net_UserAgent_Mobile_GPSを利用するとアクセスしたキャリアを自動で判別し、キャリアに応じた位置情報取得用のURLを出力できるため非常に便利です。またキャリアごとの別々のパラメーターに入っているGPS位置情報を同じパラメーターで取得できる利点もあります。
Net_UserAgent_Mobile_GPSの主なメソッドは次のとおりです。
| メソッド名 | 概要 |
| getGPSLinkGPS(位置情報取得後の遷移先URL, リンク名) | キャリアに応じた位置情報取得URLをlink(各キャリアのGPS位置情報取得URL)、tag(アンカータグ)の配列で返却する |
| getGPSResponse | GPS位置情報を取得してlat(緯度)、lon(経度)の配列で返却する |

