API key 無しでIntentを使って簡単に Google Map を呼び出して地図を表示させる方法です。
GoogleMapを使う方法 こちら が正道ですが、Google Maps API キー を取得するのは面倒です。メニューからちょっと店の場所だけ出したいというときは、この方法が簡単で便利です。
Android Studio
2021.2.1
2021.2.1
Intent.ACTION_VIEW の設定
Intent.ACTION_VIEW を使います。
1 2 |
Intent intent = new Intent(Intent.ACTION_VIEW, uri); startActivity(intent); |
uri には知りたい場所を設定するだけ
MainActivity.java
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 |
//package your.app.name; import androidx.appcompat.app.AppCompatActivity; import android.annotation.SuppressLint; import android.os.Bundle; import android.content.Intent; import android.net.Uri; public class MainActivity extends AppCompatActivity { @SuppressLint("QueryPermissionsNeeded") @Override protected void onCreate(Bundle savedInstanceState) { super.onCreate(savedInstanceState); setContentView(R.layout.activity_main); Uri uri = Uri.parse("geo:0,0?q=東京駅"); Intent intent = new Intent(Intent.ACTION_VIEW, uri); startActivity(intent); if (intent.resolveActivity(getPackageManager()) != null) { startActivity(intent); } } } |
emulatorで確認するときには、System ImageでGoogle APIsをサポートしているものでないとエラーになります。
緯度経度、ズームを指定して表示
geo:[緯度],[経度]?z=[ズーム]
と設定すると、緯度経度とズームに従った場所が地図の中央に表示されます。
1 |
Uri uri = Uri.parse("geo:35.681382,139.766084?z=16"); |
関連ページ:
- Google Map API キー取得
- Google Map 簡単に地図を表示させる
- Google Map ズームとアイコン画像貼り付け
- Google Map タップして移動、マーカーの追加
- Intentでの簡単な Google Map 地図の表示
- Google Map 移動経路
References:
一般的なインテント
インテントとインテント フィルタ