Google Maps セットアップ
このセクションでは、Google Maps SDK と MapConductor を統合するためのセットアップ手順について説明します。
- Android 開発環境
- Google Cloud Console アカウント
- Google Cloud プロジェクトで Maps SDK for Android が有効化されていること
セットアップ手順
Section titled “セットアップ手順”1. Google Cloud Console の設定
Section titled “1. Google Cloud Console の設定”- Google Cloud Console にアクセスします
- 新しいプロジェクトを作成するか、既存のものを選択します
- Maps SDK for Android API を有効にします
- 認証情報 に移動して API キーを作成します
- API キーをアプリのパッケージ名と SHA-1 証明書フィンガープリントに制限します
2. Gradle の設定
Section titled “2. Gradle の設定”まず、プロジェクトのルート build.gradle.kts または build.gradle に Secrets Gradle Plugin を追加します:
// (root)/build.gradle.ktsplugins { id("com.google.android.libraries.mapsplatform.secrets-gradle-plugin") version "2.0.1" apply false}// (root)/build.gradleplugins { id 'com.google.android.libraries.mapsplatform.secrets-gradle-plugin' version '2.0.1' apply false}次に、アプリの build.gradle.kts または build.gradle に依存関係を追加し、プラグインを適用します:
plugins { // ... other plugins id("com.google.android.libraries.mapsplatform.secrets-gradle-plugin")}
dependencies { // Google Maps SDK (version managed via libs.versions.toml) implementation("com.google.android.gms:play-services-maps:19.2.0")
// MapConductor BOM for version management (v1.1.2) implementation(platform("com.mapconductor:mapconductor-bom:1.1.2"))
// MapConductor modules (versions managed by BOM) implementation("com.mapconductor:core") implementation("com.mapconductor:for-googlemaps")}plugins { // ... other plugins id 'com.google.android.libraries.mapsplatform.secrets-gradle-plugin'}
dependencies { // Google Maps SDK (version managed via libs.versions.toml) implementation "com.google.android.gms:play-services-maps:19.2.0"
// MapConductor BOM for version management (v1.1.2) implementation platform("com.mapconductor:mapconductor-bom:1.1.2")
// MapConductor modules (versions managed by BOM) implementation "com.mapconductor:core" implementation "com.mapconductor:for-googlemaps"}Secrets Gradle Plugin は自動的に secrets.properties ファイルを読み取り、ビルド時に値を AndroidManifest.xml に注入します。
3. Android Manifest の設定
Section titled “3. Android Manifest の設定”AndroidManifest.xml に Google Maps API キーのプレースホルダーを追加します:
<application> <!-- Google Maps API Key --> <meta-data android:name="com.google.android.geo.API_KEY" android:value="${GOOGLE_MAPS_API_KEY}" />
<!-- Add location permissions --> <uses-permission android:name="android.permission.ACCESS_COARSE_LOCATION" /> <uses-permission android:name="android.permission.ACCESS_FINE_LOCATION" /></application>4. API キーの設定
Section titled “4. API キーの設定”secrets.propertiesファイルに実際の API キーを追加します(存在しない場合は作成します)。- Secrets Gradle Plugin は、このファイルの実際の値で
AndroidManifest.xmlの${GOOGLE_MAPS_API_KEY}を自動的に置き換えます。 - CI/CD ビルドの場合は、環境変数または他の安全な方法を使用してこれらの値を提供できます。
GOOGLE_MAPS_API_KEY=実際のAPIキー5. ProGuard / R8 の設定(該当する場合)
Section titled “5. ProGuard / R8 の設定(該当する場合)”ProGuard/R8 を使用している場合は、proguard-rules.pro にこれらのルールを追加します:
# Google Play Services-keep class com.google.android.gms.maps.** { *; }-keep interface com.google.android.gms.maps.** { *; }-dontwarn com.google.android.gms.**Google Maps のセットアップを確認するには:
- アプリをビルドして実行します
- エラーなしでマップが表示されることを確認します
- 位置情報のパーミッションが機能していることを確認します
- 基本的なマップ操作(ズーム、パン)をテストします
@Composablefun TestGoogleMaps() { val mapState = rememberGoogleMapViewState( cameraPosition = MapCameraPositionImpl( position = GeoPointImpl.fromLatLong(0.0, 0.0), zoom = 3.0, ), )
GoogleMapView(state = mapState) { // もし地図が表示されれば、セットアップが正しくできています }}
トラブルシューティング
Section titled “トラブルシューティング”よくある問題
Section titled “よくある問題”マップが表示されない(グレーの画面)
secrets.propertiesの API キーが正しいことを確認してください- Google Cloud Console で Maps SDK for Android が有効になっていることを確認してください
- API キーの制限がアプリのパッケージ名と SHA-1 と一致していることを確認してください
ログに API キーエラーが表示される
- API キーの値を再確認してください
- キーの有効期限が切れていないことを確認してください
- Google Cloud Console で API キーの制限を確認してください
ビルドエラー
- Play Services Maps の依存関係がプロジェクト設定と一致していることを確認してください
secrets.propertiesファイルが存在し、適切にフォーマットされていることを確認してくださいsecrets.propertiesがローカルビルドで誤って無視されていないことを確認してください
次のステップ
Section titled “次のステップ”Google Maps SDK が適切に設定されたら、Map View コンポーネントのドキュメントに記載されているように MapConductor の GoogleMapView コンポーネントを使用できます。