Android tutorial Google Map View ではまりそうなとこ。

シェアする

Google Map View のチュートリアル、わりとめんどくさいのでそのへんまとめる。

Sponsored Links

1) Google Api の追加

Android SDK標準では Google Map は扱えないのでインストールする必要がある。
Eclipse のメニューから、
Window -> Android SDK and ADV manager -> Available Packages -> Google API とかそれっぽいの選んで Install

2) 新規プロジェクトの Build Target は Google APIs を選択

ふつーの Android Project 選んでも使えないっぽい。

3) Google Map を使用するには API Key を取得しなければいけない。

API Keyを取得するには証明書のフィンガープリント(MD5)が必要になる。あともちろんGoogleアカウント。
フィンガープリントはJDKをインストールした際についてくるツールを使用すればおk。また、作成には証明書が必要になるがデバッグ用のものが ~/.android に入っている。JDKにパスが通ってなくて相対パスで指定しているがそれはそれぞれということで。

ryomatsu@RYOMATSU-PC ~/.android
$ pwd
/c/Users/ryomatsu/.android

ryomatsu@RYOMATSU-PC ~/.android
$ ../../../Java/jdk1.6.0_24/bin/keytool.exe -list -keystore debug.keystore
キーストアのパスワードを入力してください:

*****************  警告 警告 警告  *****************
*  キーストアに保存された情報の完全性は検証されて  *
*  いません!  完全性を検証するには、キーストアの   *
*  パスワードを入力する必要があります。            *
*****************  警告 警告 警告  *****************

キーストアのタイプ: JKS
キーストアのプロバイダ: SUN

キーストアには 1 エントリが含まれます。

androiddebugkey, 2011/03/26, PrivateKeyEntry,
証明書のフィンガープリント (MD5): 01:23:45:67:89:AB:CD:EF:01:23:45:67:89:AB:CD:EF

4) Adding Overlay Items

チュートリアルどおりにやったらオーバーレイアイテムをタップしたときにヌルポが出てなんじゃこれーと考えていた。結論からいうとこの項目時に HelloItemizedOverlay にコンストラクタを追加して、そっちを呼ばなければいけなかったのだが、そうしてなかったのが原因だった。ついでにこの追加したコンストラクタも修正しないとドロイド君のアイコンは表示されなかった。

というわけで以下のように変更。

HelloMap.java

//	HelloItemizedOverlay itemizedoverlay = new HelloItemizedOverlay(drawable);
	HelloItemizedOverlay itemizedoverlay = new HelloItemizedOverlay(drawable, this);

HelloItemizedOverlay.java

	public HelloItemizedOverlay(Drawable defaultMarker, Context context){
//		super(defaultMarker);
		super(boundCenterBottom(defaultMarker));
		mContext = context;
	}

動いた。

google map api test

Sponsored Link

シェアする

フォローする