- 2008-02-11 23:56
- android
m5-rc14版は「Androidの地図アプリをm5-rc14っぽくしてみた」をご覧下さい。
前回のエントリ「Androidで地図アプリケーションを作ってみた」で公開した、地図とWebAPIをマッシュアップしたアプリケーションを「ぐるなび」に対応させて、ちょっとエンハンスしました。
前回のエントリで安藤恐竜さんにぐるなびもWeb API公開してる旨を教えてもらったので、さっそく対応。
メニュー部分に今までの「Restaurant」をなくして、「ぐるなび」と「ホットペッパー」が入りました。
お店の詳細情報を表示したときに、URLをリンク状態にしていました。これはUIを定義するXMLで簡単に設定できます。autoLinkです。
<TextView id="@+id/url" android:autoLink="all"
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:text="http://www.adamrocker.com/blog" />これは不細工でしたので、今回はアイコンにしました。
このアイコンボタンを選択するとブラウザが立ち上がります。
エミュレータだと、ちょっと重いですが…。
UIを定義するXMLの実装はこうなっています。
<ImageButton id="@+id/web"
android:layout_width="32px"
android:layout_height="32px"
android:src="@android:drawable/stat_notify_browser" />アイコンは自分で準備することもできますが、面倒だったのでシステムのアイコンを拝借。
お店の詳細情報を表示するダイアログに電話アイコンを追加しました。
これをクリックすると電話を掛けられます。
これは「ぐるなび」のみで表示されます。
#もちろんエミュレータ上からは電話をかけているフリです。
実装方法はこんな感じです。
String PHONE_NUMBER = "0123456789"; IServiceManager sm = ServiceManagerNative.getDefault(); IPhone phoneService = IPhone.Stub.asInterface(sm.getService("phone")); phoneService.call(PHONE_NUMBER);
いつも通りeclipseのプロジェクトも公開しておきます。
各種のWeb APIを利用するための認証キーはご自分で取得して下さい。
around_here2.zip
m5-rc14バージョンをご利用下さい。
他の詳細は前回のエントリ「Androidで地図アプリケーションを作ってみた」を参照して下さい。
ぐるなび版はすでに安藤恐竜さんの所でも実装されているようですね。
GPS情報を利用する場合は測地系が日本と世界でちょっとズレがあるという事を知りました。
ホットペッパーもヤフー!も検索する際の測地系を選択できるのに、ぐるなびは日本測地系。面倒だなぁ…。
もちろん、日本と世界の測地系を相互変換する計算方法がある。
ちゃんと計算するには高度も必要だということなので、今回はココを参考に超簡易的にやっています。
緯度と経度に定数を加減算しているだけです。
- Newer: Androidの地図アプリに表示するマークをなんちゃって3Dにしてみた
- Older: Androidで地図アプリケーションを作ってみた
Comments:2
- 安藤恐竜 08-02-12 (火) 18:51
-
日本語記事だけの手抜きすんません。というか、Adamrockerさんのソースコード丸パクリで遊んでてすんません。
ところでプロジェクトのURLがバイナリと同じになっちゃってます。URL削って落としちゃいましたけど。
- adamrocker 08-02-12 (火) 20:47
-
いえいえ。日本限定のサービスなので日本語だけでも十分です。
ZIPのURL修正しました。報告ありがとうございます。
Trackbacks:0
- Trackback URL for this entry
- http://www.adamrocker.com/blog/183/android_mapview_with_web_api.html/trackback/
- Listed below are links to weblogs that reference
- Androidの地図アプリをぐるなびに対応しました from throw Life
