Google Maps Android API v2 を使って地図を表示させたいのに、なぜか地図が表示されないという壁にぶつかることがあります。
Google Maps Android API Key の取得の仕方は以下
AndroidでGoogle Maps API Key を取得する方法【めっちゃ詳しくわかりやすい解説】
API Keyを取得はできたけど、Google Maps Android API v2でどうやったら地図を表示できるんだ!
その方法を一から十まで教えましょう。
まず、”Manifestファイルを編集しましょう!”
Manifestファイルの、applicationタグの前に以下のコードを加えましょう。
<uses-permission android:name="android.permission.INTERNET"/> <uses-permission android:name="android.permission.ACCESS_NETWORK_STATE"/> <uses-permission android:name="android.permission.ACCESS_COARSE_LOCATION"/> <uses-permission android:name="android.permission.ACCESS_FINE_LOCATION"/> <uses-permission android:name="android.permission.ACCESS_MOCK_LOCATION"/> <uses-permission android:name="android.permission.WRITE_EXTERNAL_STORAGE"/> <uses-permission android:name="com.google.android.providers.gsf.permission.READ_GSERVICES"/> <uses-feature android:glEsVersion="0x00020000" android:required="true"/>
記載したら、applicationタグの下に、次に以下のコードを加えます。
<meta-data android:name="com.google.android.maps.v2.API_KEY" android:value=" あなたのAPI key "/>
次に、”地図を表示したいxmlを編集しましょう!”
地図を表示させたい箇所に以下のコードを加えてください。
<fragment android:id="@+id/mapview"
android:layout_width=”match_parent”
android:layout_height=”match_parent”
class=”com.google.android.gms.maps.SupportMapFragment”
android:clickable=”true”
android:enabled=”true”/>
これでxmlはOK!!
最後に、”Activityです!!”
最低限地図を表示するのに必要なものをimportします。
import com.google.android.gms.maps.GoogleMap; import com.google.android.gms.maps.SupportMapFragment; import android.support.v4.app.FragmentActivity;
importできたら、「FragmentActivity」を継承します。
public class TestMapActivity extends FragmentActivity {
次に、以下のメンバ変数を加えます。
private GoogleMap map;
最後に・・・
@Override public void onCreate(Bundle savedInstanceState) { setUpMapIfNeeded(); }
// Find and initialize the map view. private void setUpMapIfNeeded() { // Do a null check to confirm that we have not already instantiated the map. if (map == null) { // Try to obtain the map from the SupportMapFragment. map = ((SupportMapFragment) getSupportFragmentManager().findFragmentById(R.id.mapview)).getMap(); // Check if we were successful in obtaining the map. if (map != null) { setUpMap(); } }
private void setUpMap() { //地図の表示設定をここに書きます。 }
とりあえず、これでアフリカが中心となって地図が表示されます。
ここまで来たら安心なので、あとはググったりデジウィキでGoogleMapについての記事を読んで。現在位置を取得したり、ルートを表示させたりなどとやりたいことをやりましょう。
- コンパイルは問題なく通ったけど、アプリが予期せず停止して起動しない。 — じぃしぃ {2013-09-04 (水) 10:53:12}
- コンパイルは問題なく通ったけど、アプリが予期せず停止して起動しない。 — じぃしぃ {2013-09-04 (水) 11:03:14}