Flickr APIと位置情報を使い画像をiPhoneの地図に表示するにはiOSでジオ(GEO)プログミラング入門(2)(1/3 ページ)

iPhone/iPad/iPod touchで動く位置情報アプリを作成するための「測位機能の取り扱い」「地図の取り扱い」「サーバとの通信」という重要なポイントを解説します

» 2011年06月06日 00時00分 公開
[郷田まり子株式会社鳥人間]

位置情報(GEO)系のWeb APIをiOSのAPIから使う

 前回の「iPhoneアプリで位置情報と地図を使うための基礎知識」では、位置情報アプリの基本ともいえる、位置情報の取得と地図の表示を行いました。今回は、現在地に応じてネットワーク経由で情報を取得して表示してみます。

さまざまな位置情報系のWeb API

 大量の位置情報データを扱うようなサービスでは、サーバとの連携が必要になります。独自のサービスを作成するならば、自前でサーバを用意する必要がありますが、公開されているWeb APIマッシュアップし、見せ方を工夫するだけでも、面白いアプリを作れます。

 以下は、主な位置情報系のWeb APIの例です。

FlickrのWeb APIをiOSから利用するための便利なライブラリもあるが……

 今回は、通信を行ってデータを取得し、表示するアプリの例として、写真共有サイト「Flickr」のWeb APIを使って現在地付近の写真を取得してみます。


 FlickrのWeb APIをiOSから利用するための便利なライブラリObjectiveFlickr」もありますが、この記事では、他のAPIにも応用ができるよう、できるだけiOS SDKの標準APIを使って開発することにします。

 iOS SDKで作るネイティブアプリのObjective-Cコードを解説するので、iOS SDKやObjective-Cについて詳細を知りたい方は、以下の連載を参照しておいてください。

Flickr APIを使うための登録をするには

 Flickr APIを利用するには、まずはアプリの登録を行う必要があります。Flickrには、「The App Garden on Flickr」という開発者向けのコンテンツがあり、Flickrのアカウントを持っている人なら誰でもアプリを開発できます。

 「Flickr」のTOPページ→「The App Garden」→「Create an App」にアクセスし、新しいアプリを登録します。Flickr APIを利用したアプリは、非商用(Non-Commercial)と商用(Commercial)に分類され、若干利用規約などが異なります。利用目的に合ったタイプの「Request an API Key」をクリックします。

図1 非商用と商用を選択 図1 非商用と商用を選択

 アプリの名称と、概要を記入します。概要は後から変えることもできます。利用規約をしっかり読んで、同意したら、アプリを登録します。

図2 アプリの名称と、概要を記入 図2 アプリの名称と、概要を記入

 登録が完了すると、「Key」「Secret」が発行されます。これらは、後ほど、活用します。

図3 「Key」「Secret」が発行される 図3 「Key」「Secret」が発行される

 次ページでは、FlickrのAPIを使って、指定した地点の周辺の画像を検索してみます。

コラム 「どうやって位置情報付きで投稿しているの?」

デジタルカメラで撮影した画像には、撮影したときのカメラやレンズの設定(撮影時刻、カメラの機種名、焦点距離、露出時間などなど……)がEXIF情報として埋め込まれます。それに加えて、緯度経度が入っている場合もあります。

iPhoneには、撮影した写真にも撮影地点を埋め込む機能があります。この機能をオフにすることもできます。GPSレシーバ機能を搭載したデジタルカメラもあります。

図4 写真とEXIF情報 図4 写真とEXIF情報

このEXIF情報に埋め込まれた位置情報を検出しているのです。また、EXIF情報から取得したものだけでなく、ユーザーが手動で指定することもできます。

図5 撮影地点を地図から選択 図5 撮影地点を地図から選択

       1|2|3 次のページへ

Copyright © ITmedia, Inc. All Rights Reserved.

RSSについて

アイティメディアIDについて

メールマガジン登録

@ITのメールマガジンは、 もちろん、すべて無料です。ぜひメールマガジンをご購読ください。