Na tej stronie dowiesz się, jak skonfigurować projekt Android Studio tak, aby używał Maps SDK na Androida bez użycia szablonu Map Google omówiono to w krótkim wprowadzeniu.
Szablon Map Google automatycznie konfiguruje i dodaje podstawową mapę do nowego projekt Android Studio. Możesz też dodać mapę do projektu na Androida. który korzysta z innego szablonu w Android Studio. W tym celu musisz ręcznie skonfiguruj projekt, a następnie dodaj mapę.
Krok 1. Skonfiguruj Android Studio
W tym dokumencie opisujemy środowisko programistyczne, w którym Android Studio Hedgehog oraz Wtyczka Androida do obsługi Gradle wersji 8.2.
Krok 2. Konfigurowanie pakietu SDK
Biblioteka Maps SDK na Androida jest dostępna repozytorium Google Maven. Do Dodaj pakiet SDK do swojej aplikacji, wykonaj te czynności:
- W pliku
settings.gradle
najwyższego poziomu umieść w nim portal wtyczek Gradle, repozytorium Google Maven, i centralne repozytorium Maven. w ramach blokupluginManagement
. BlokpluginManagement
musi występować przed innymi stwierdzeniami w skrypcie.pluginManagement { repositories { gradlePluginPortal() google() mavenCentral() } }
- W pliku
settings.gradle
najwyższego poziomu umieść w nim Repozytorium Google Maven i centralne repozytorium Maven. w blokudependencyResolutionManagement
:dependencyResolutionManagement { repositoriesMode.set(RepositoriesMode.FAIL_ON_PROJECT_REPOS) repositories { google() mavenCentral() } }
- W pliku
build.gradle
na poziomie modułu dodaj Zależność Usług Google Play w przypadku: SDK Maps na Androida.Zakręcony
dependencies { // Maps SDK for Android implementation 'com.google.android.gms:play-services-maps:19.0.0' }
Kotlin
dependencies { // Maps SDK for Android implementation("com.google.android.gms:play-services-maps:18.2.0") }
- W pliku
build.gradle
na poziomie modułu ustawcompileSdk
iminSdk
na te wartości:Zakręcony
android { compileSdk 34 defaultConfig { minSdk 21 // ... } }
Kotlin
android { compileSdk = 34 defaultConfig { minSdk = 21 // ... } }
- W sekcji
buildFeatures
plikubuild.gradle
na poziomie modułu dodaj klasęBuildConfig
, której możesz użyć, aby uzyskać dostęp do wartości metadanych zdefiniowanych później w ramach tej procedury:Zakręcony
android { // ... buildFeatures { buildConfig true // ... } }
Kotlin
android { // ... buildFeatures { buildConfig = true // ... } }
Krok 3. Dodaj klucz interfejsu API do projektu
W tej sekcji opisano, jak zapisać klucz interfejsu API, aby umożliwić bezpieczne korzystanie z niego
do aplikacji. Nie sprawdzaj klucza interfejsu API w systemie kontroli wersji, dlatego zalecamy
i przechowywanie go w pliku secrets.properties
, który znajduje się w katalogu głównym instancji
w projektach AI. Więcej informacji o pliku secrets.properties
znajdziesz tutaj:
Pliki właściwości Gradle.
Aby usprawnić to zadanie, zalecamy skorzystanie z Wtyczka Gradle obiektów tajnych na Androida.
Aby zainstalować wtyczkę Gradle obiektów tajnych na Androida w projekcie Map Google:
-
W Android Studio otwórz
build.gradle
lubbuild.gradle.kts
najwyższego poziomu. i dodaj ten kod do elementudependencies
podbuildscript
Zakręcony
buildscript { dependencies { classpath "com.google.android.libraries.mapsplatform.secrets-gradle-plugin:secrets-gradle-plugin:2.0.1" } }
Kotlin
buildscript { dependencies { classpath("com.google.android.libraries.mapsplatform.secrets-gradle-plugin:secrets-gradle-plugin:2.0.1") } }
-
Otwórz plik
build.gradle
na poziomie modułu i dodaj poniższy kod do sekcjiplugins
.Zakręcony
plugins { // ... id 'com.google.android.libraries.mapsplatform.secrets-gradle-plugin' }
Kotlin
plugins { id("com.google.android.libraries.mapsplatform.secrets-gradle-plugin") }
- W pliku
build.gradle
na poziomie modułu sprawdź, czytargetSdk
orazcompileSdk
mają wartość 34. - Zapisz plik i zsynchronizować projekt z Gradle.
-
Otwórz plik
secrets.properties
w katalogu najwyższego poziomu, a następnie dodaj tego kodu. ZastąpYOUR_API_KEY
swoim kluczem interfejsu API. Przechowuj klucz w tym pliku ponieważsecrets.properties
nie jest sprawdzany w kontroli wersji systemu.MAPS_API_KEY=YOUR_API_KEY
- Zapisz plik.
-
Utwórz plik
local.defaults.properties
w katalogu najwyższego poziomu, tak samo jako pliksecrets.properties
, a potem dodaj podany niżej kod.MAPS_API_KEY=DEFAULT_API_KEY
Ten plik ma na celu udostępnienie zapasowej lokalizacji klucza interfejsu API, jeśli plik Nie znaleziono pliku
secrets.properties
, więc kompilacje nie zawierają błędów. Może się tak zdarzyć, jeśli sklonujesz aplikację z systemu kontroli wersji, który pomijasecrets.properties
oraz nie utworzyłeś jeszcze lokalnie plikusecrets.properties
, który umożliwi przesyłanie klucz interfejsu API. - Zapisz plik.
-
W pliku
AndroidManifest.xml
otwórzcom.google.android.geo.API_KEY
i zaktualizujandroid:value attribute
. Jeśli tag<meta-data>
nie istnieje, utwórz go jako element podrzędny tagu<application>
.<meta-data android:name="com.google.android.geo.API_KEY" android:value="${MAPS_API_KEY}" />
Note:
com.google.android.geo.API_KEY
is the recommended metadata name for the API key. A key with this name can be used to authenticate to multiple Google Maps-based APIs on the Android platform, including the Maps SDK for Android. For backwards compatibility, the API also supports the namecom.google.android.maps.v2.API_KEY
. This legacy name allows authentication to the Android Maps API v2 only. An application can specify only one of the API key metadata names. If both are specified, the API throws an exception. -
In Android Studio, open your module-level
build.gradle
orbuild.gradle.kts
file and edit thesecrets
property. If thesecrets
property does not exist, add it.Edit the properties of the plugin to set
propertiesFileName
tosecrets.properties
, setdefaultPropertiesFileName
tolocal.defaults.properties
, and set any other properties.Groovy
secrets { // To add your Maps API key to this project: // 1. If the secrets.properties file does not exist, create it in the same folder as the local.properties file. // 2. Add this line, where YOUR_API_KEY is your API key: // MAPS_API_KEY=YOUR_API_KEY propertiesFileName = "secrets.properties" // A properties file containing default secret values. This file can be // checked in version control. defaultPropertiesFileName = "local.defaults.properties" // Configure which keys should be ignored by the plugin by providing regular expressions. // "sdk.dir" is ignored by default. ignoreList.add("keyToIgnore") // Ignore the key "keyToIgnore" ignoreList.add("sdk.*") // Ignore all keys matching the regexp "sdk.*" }
Kotlin
secrets { // To add your Maps API key to this project: // 1. If the secrets.properties file does not exist, create it in the same folder as the local.properties file. // 2. Add this line, where YOUR_API_KEY is your API key: // MAPS_API_KEY=YOUR_API_KEY propertiesFileName = "secrets.properties" // A properties file containing default secret values. This file can be // checked in version control. defaultPropertiesFileName = "local.defaults.properties" // Configure which keys should be ignored by the plugin by providing regular expressions. // "sdk.dir" is ignored by default. ignoreList.add("keyToIgnore") // Ignore the key "keyToIgnore" ignoreList.add("sdk.*") // Ignore all keys matching the regexp "sdk.*" }
Krok 4. Zaktualizuj plik manifestu aplikacji
W tej sekcji opisano ustawienia, które należy dodać do
AndroidManifest.xml
.Numer wersji Usług Google Play
Dodaj poniższą deklarację w elemencie
application
. Ten kod obejmuje wersję Usług Google Play, z którą aplikacja została skompilowana.<meta-data android:name="com.google.android.gms.version" android:value="@integer/google_play_services_version" />
Dostęp do lokalizacji
Jeśli aplikacja musi mieć dostęp do lokalizacji użytkownika, musisz poprosić o dostęp dostęp do lokalizacji w pliku
AndroidManifest.xml
. Dostępne opcjeACCESS_FINE_LOCATION
, która podaje dokładną lokalizację urządzenia,ACCESS_COARSE_LOCATION
, co jest mniej dokładne. Więcej informacji: danych o lokalizacji.Aby poprosić o uprawnienie
ACCESS_FINE_LOCATION
, dodaj ten kod do sekcji Elementmanifest
:<uses-permission android:name="android.permission.ACCESS_FINE_LOCATION"/>
Uprawnienia dostępu do pamięci zewnętrznej
Jeśli kierujesz pakiet SDK Usług Google Play na wersję 8.3 lub nowszą, nie potrzebujesz uprawnienia
WRITE_EXTERNAL_STORAGE
. Jeśli kierujesz reklamy starszych wersji pakietu SDK Usług Google Play, musisz poprosić o WRITE_EXTERNAL_STORAGE w elemenciemanifest
.<uses-permission android:name="android.permission.WRITE_EXTERNAL_STORAGE" />
Starsza biblioteka Apache HTTP
Jeśli korzystasz z konta
com.google.android.gms:play-services-maps:16.0.0
lub starszej aplikacja jest kierowana na interfejs API na poziomie 28 (Android 9.0) lub wyższym, musisz uwzględnić następującą deklarację w elemencie<application>
funkcjiAndroidManifest.xml
W przeciwnym razie pomiń tę deklarację.<uses-library android:name="org.apache.http.legacy" android:required="false" />
Krok 5. Skonfiguruj urządzenie z Androidem
Aby uruchomić aplikację, która korzysta z pakietu Maps SDK na Androida, musisz ją wdrożyć na urządzeniu z Androidem lub na urządzeniu z Androidem emulator oparty na Androidzie 5.0 lub nowszym i obejmuje interfejsów API Google.
- Aby użyć urządzenia z Androidem, postępuj zgodnie z instrukcjami na stronie Uruchamianie aplikacji na urządzeniu
- Aby użyć emulatora Androida, możesz utworzyć urządzenie wirtualne i zainstalować emulator za pomocą: Menedżer urządzeń wirtualnych z Androidem (AVD), dostępne w Android Studio.
Krok 6. Opcjonalnie sprawdź, czy masz dostęp do zespołu pomocy Usługi Google Play
Maps SDK na Androida wymaga, by urządzenie, na którym wdrożysz ma zainstalowane Usługi Google Play. Google udostępnia metodę, za pomocą której może zadzwonić z aplikacji, aby to sprawdzić. Więcej informacji znajdziesz w sekcji Sprawdzanie, czy Google Usługi Google Play są zainstalowane.
Dalsze kroki
Po skonfigurowaniu projektu możesz dodać mapę.
O ile nie stwierdzono inaczej, treść tej strony jest objęta licencją Creative Commons – uznanie autorstwa 4.0, a fragmenty kodu są dostępne na licencji Apache 2.0. Szczegółowe informacje na ten temat zawierają zasady dotyczące witryny Google Developers. Java jest zastrzeżonym znakiem towarowym firmy Oracle i jej podmiotów stowarzyszonych.
Ostatnia aktualizacja: 2024-08-17 UTC.
[{ "type": "thumb-down", "id": "missingTheInformationINeed", "label":"Brak potrzebnych mi informacji" },{ "type": "thumb-down", "id": "tooComplicatedTooManySteps", "label":"Zbyt skomplikowane / zbyt wiele czynności do wykonania" },{ "type": "thumb-down", "id": "outOfDate", "label":"Nieaktualne treści" },{ "type": "thumb-down", "id": "translationIssue", "label":"Problem z tłumaczeniem" },{ "type": "thumb-down", "id": "samplesCodeIssue", "label":"Problem z przykładami/kodem" },{ "type": "thumb-down", "id": "otherDown", "label":"Inne" }] [{ "type": "thumb-up", "id": "easyToUnderstand", "label":"Łatwo zrozumieć" },{ "type": "thumb-up", "id": "solvedMyProblem", "label":"Rozwiązało to mój problem" },{ "type": "thumb-up", "id": "otherUp", "label":"Inne" }]