יוצרים אפליקציה ל-Android שמציגה מפה באמצעות התבנית 'תצוגות של מפות Google' ל-Android Studio. אם יש לכם פרויקט Android Studio שאתם רוצים להגדיר, קראו את המאמר הגדרה של פרויקט Android Studio.
המדריך למתחילים מיועד למפתחים שמכירים פיתוח בסיסי של Android באמצעות Kotlin או Java.
מידע על סביבת הפיתוח
המדריך למתחילים פותח באמצעות Android Studio Hedgehog והפלאגין של Android Gradle בגרסה 8.2.
הגדרה של מכשיר Android
כדי להפעיל אפליקציה שמשתמשת ב-SDK של מפות Google ל-Android, יש לפרוס אותה במכשיר Android או באמולטור Android שמבוסס על Android 4.0 ואילך וכולל את Google APIs.
- כדי להשתמש במכשיר Android, צריך לפעול לפי ההוראות במאמר הפעלת אפליקציות במכשיר חומרה.
- כדי להשתמש באמולטור Android, אפשר ליצור מכשיר וירטואלי ולהתקין את האמולטור באמצעות מנהל המכשיר הווירטואלי (AVD) של Android שכלול ב-Android Studio.
יצירת פרויקט של מפות Google ב-Android Studio
תהליך היצירה של פרויקט במפות Google ב-Android Studio השתנה באפליקציית Flamingo ובגרסאות מאוחרות יותר של Android Studio.
פותחים את Android Studio ולוחצים על Create New Project בחלון Welcome to Android Studio.
בחלון New Project, בקטגוריה Phone and Tablet, בוחרים באפשרות No Activity ולוחצים על Next.
ממלאים את הטופס פרויקט חדש:
מגדירים את השפה ל-Java או ל-Kotlin. שתי השפות נתמכות באופן מלא על ידי ה-SDK של מפות Google ל-Android. מידע נוסף על Kotlin זמין במאמר פיתוח אפליקציות ל-Android באמצעות Kotlin.
צריך להגדיר את הערך של Minimum SDK כגרסת SDK שתואמת למכשיר הבדיקה. עליכם לבחור גרסה מתקדמת יותר מהגרסה המינימלית הנדרשת על ידי ה-SDK של מפות Google ל-Android בגרסה 18.2.x, שהיא Android API ברמה 19 ("KitKat", Android 4.4) ואילך. בנתוני הגרסה יש מידע עדכני על הדרישות לגרסת ה-SDK.
מגדירים את Build configuration Language (שפת ההגדרה) ל-Kotlin DSL או ל-Groovy DSL. קטעי הקוד לשתי השפות של הגדרות ה-build מוצגים בפעולות הבאות.
לוחצים על סיום.
מערכת Android Studio מפעילה את Gradle ויוצרת את הפרויקט. פעולה זו עשויה להימשך זמן מה.
הוספת פעילות הצפיות במפות Google
- לוחצים לחיצה ימנית על התיקייה
app
בפרויקט. בחר חדש > Google > פעילות תצוגות של מפות Google.
בתיבת הדו-שיח New Android Activity מסמנים את התיבה Launcher Activity.
בוחרים באפשרות סיום.
מידע נוסף זמין במאמר הוספת קוד מתבנית.
- לוחצים לחיצה ימנית על התיקייה
בסיום ה-build, Android Studio פותח את הקבצים
AndroidManifest.xml
ו-MapsActivity
. לפעילות שלכם יכול להיות שם אחר, אבל זה השם שהגדרתם במהלך ההגדרה.
הגדרת פרויקט ב-Google Cloud
מבצעים את שלבי ההגדרה הנדרשים של מסוף Cloud על ידי לחיצה על הכרטיסיות הבאות:
שלב 1
המסוף
-
במסוף Google Cloud, בדף לבחירת הפרויקט לוחצים על Create Project כדי ליצור פרויקט חדש ב-Cloud.
-
הקפידו לוודא שהחיוב מופעל בפרויקט שלכם ב-Cloud. מוודאים שהחיוב מופעל בפרויקט.
Google Cloud מציע תקופת ניסיון בחיוב של 0.00$. תקופת הניסיון תסתיים בסיום 90 הימים או אחרי שיצטברו בחשבון חיובים בסך 300$, המוקדם מביניהם. אפשר לבטל בכל שלב. הפלטפורמה של מפות Google כוללת זיכוי חודשי קבוע בסך 200$. למידע נוסף, תוכלו לקרוא את המאמר זיכויים בחשבון לחיוב וחיוב.
Cloud SDK
gcloud projects create "PROJECT"
בקישורים הבאים אפשר לקרוא מידע נוסף על Google Cloud SDK , התקנת Cloud SDK ועל הפקודות הבאות:
שלב 2
כדי להשתמש בפלטפורמה של מפות Google, צריך להפעיל את ממשקי ה-API או ערכות ה-SDK שבהם אתם מתכוונים להשתמש בפרויקט.
המסוף
Cloud SDK
gcloud services enable \ --project "PROJECT" \ "maps-android-backend.googleapis.com"
בקישורים הבאים אפשר לקרוא מידע נוסף על Google Cloud SDK , התקנת Cloud SDK ועל הפקודות הבאות:
שלב 3
השלב הזה כולל רק את תהליך היצירה של מפתח ה-API. אם אתם משתמשים במפתח ה-API בסביבת הייצור, מומלץ מאוד להגביל את מפתח ה-API. אפשר למצוא מידע נוסף בדף הספציפי למוצר שימוש במפתחות API.
מפתח ה-API הוא מזהה ייחודי שמאמת בקשות שמשויכות לפרויקט למטרות שימוש וחיוב. צריך להיות לך לפחות מפתח API אחד שמשויך לפרויקט.
כך יוצרים מפתח API:
המסוף
-
עוברים לדף הפלטפורמה של מפות Google > פרטי כניסה.
-
בדף Credentials, לוחצים על Create credentials > מפתח API.
תיבת הדו-שיח API key created מציגה את מפתח ה-API החדש שיצרתם. -
לוחצים על סגירה.
מפתח ה-API החדש מופיע בדף Credentials בקטע מפתחות API.
(חשוב לזכור להגביל את מפתח ה-API לפני שמשתמשים בו בסביבת הייצור).
Cloud SDK
gcloud alpha services api-keys create \ --project "PROJECT" \ --display-name "DISPLAY_NAME"
בקישורים הבאים אפשר לקרוא מידע נוסף על Google Cloud SDK , התקנת Cloud SDK ועל הפקודות הבאות:
הוספה של מפתח ה-API לאפליקציה
בקטע הזה נסביר איך לאחסן את מפתח ה-API כך שהאפליקציה תוכל להפנות אליו באופן מאובטח. לא כדאי לבדוק את מפתח ה-API במערכת לניהול גרסאות, לכן מומלץ לשמור אותו בקובץ secrets.properties
, שנמצא בספריית הבסיס של הפרויקט. מידע נוסף על הקובץ secrets.properties
זמין במאמר קבצים של מאפייני גראנד.
כדי לייעל את המשימה הזו, מומלץ להשתמש בפלאגין של Secrets Gradle ל-Android.
כדי להתקין את הפלאגין Secrets Gradle ל-Android בפרויקט של מפות Google:
-
ב-Android Studio, פותחים את הקובץ
build.gradle
אוbuild.gradle.kts
ברמה העליונה ומוסיפים את הקוד הבא לרכיבdependencies
בקטעbuildscript
.מגניב
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") } }
-
פותחים את הקובץ
build.gradle
ברמת המודול ומוסיפים את הקוד הבא לרכיבplugins
.מגניב
plugins { // ... id 'com.google.android.libraries.mapsplatform.secrets-gradle-plugin' }
Kotlin
plugins { id("com.google.android.libraries.mapsplatform.secrets-gradle-plugin") }
- בקובץ
build.gradle
ברמת המודול, מוודאים ש-targetSdk
ו-compileSdk
מוגדרים ל-34. - שומרים את הקובץ ומסנכרנים את הפרויקט עם Gradle.
-
פותחים את הקובץ
secrets.properties
בספרייה ברמה העליונה ומוסיפים את הקוד הבא. מחליפים אתYOUR_API_KEY
במפתח ה-API. אפשר לאחסן את המפתח בקובץ הזה כי אין אפשרות לבדוק אתsecrets.properties
במערכת לניהול גרסאות.MAPS_API_KEY=YOUR_API_KEY
- שומרים את הקובץ.
-
יוצרים את הקובץ
local.defaults.properties
בספרייה ברמה העליונה, באותה תיקייה שבה נמצא הקובץsecrets.properties
, ולאחר מכן מוסיפים את הקוד הבא.MAPS_API_KEY=DEFAULT_API_KEY
מטרת הקובץ הזה היא לספק מיקום גיבוי למפתח ה-API אם הקובץ
secrets.properties
לא נמצא כדי שגרסאות build לא ייכשלו. מצב כזה יכול לקרות אם משכפלים את האפליקציה ממערכת לניהול גרסאות, ללאsecrets.properties
ועדיין לא יצרת קובץsecrets.properties
באופן מקומי כדי לספק את מפתח ה-API. - שומרים את הקובץ.
-
בקובץ
AndroidManifest.xml
, נכנסים אלcom.google.android.geo.API_KEY
ומעדכנים אתandroid:value attribute
. אם התג<meta-data>
לא קיים, יוצרים אותו כצאצא של התג<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 { // Optionally specify a different file name containing your secrets. // The plugin defaults to "local.properties" 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 { // Optionally specify a different file name containing your secrets. // The plugin defaults to "local.properties" 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.*" }
הצגת הקוד
בוחנים את הקוד שהתבנית מספקת. באופן ספציפי, עיינו בקבצים הבאים בפרויקט Android Studio.
קובץ פעילות במפות
קובץ הפעילות במפות הוא הפעילות העיקרית באפליקציה, והוא מכיל את הקוד לניהול ולהצגה של המפה. כברירת מחדל, הקובץ שמגדיר את הפעילות נקרא
MapsActivity.java
, או אם הגדרתם את Kotlin כשפה של האפליקציה,MapsActivity.kt
.המרכיבים העיקריים של הפעילות במפות:
האובייקט
SupportMapFragment
מנהל את מחזור החיים של המפה, והוא רכיב ההורה של ממשק המשתמש של האפליקציה.האובייקט
GoogleMap
מאפשר גישה לנתוני המפה ולתצוגה. זוהי הסיווג הראשי של ה-SDK של מפות Google ל-Android. במדריך אובייקטים במפה מתוארים האובייקטיםSupportMapFragment
ו-GoogleMap
בפירוט רב יותר.הפונקציה
moveCamera
ממרכזת את המפה בקואורדינטותLatLng
של סידני אוסטרליה. ההגדרות הראשונות שצריך לקבוע כשמוסיפים מפה הן בדרך כלל הגדרות המיקום והמצלמה במפה, כמו זווית הצפייה, כיוון המפה ורמת המרחק מהתצוגה. לפרטים נוספים, אפשר לקרוא את המדריך מצלמה ותצוגה.הפונקציה
addMarker
מוסיפה סמן לקואורדינטות של סידני. פרטים נוספים זמינים במדריך לסמנים.
קובץ Gradle של מודול
קובץ המודול
build.gradle
כולל את התלות הבאה של מפות, הנדרשת על ידי ה-SDK של מפות Google ל-Android.dependencies { // Maps SDK for Android implementation 'com.google.android.gms:play-services-maps:18.2.0' }
מידע נוסף על ניהול התלות במפות Google זמין במאמר ניהול גרסאות.
קובץ פריסת XML
הקובץ
activity_maps.xml
הוא קובץ פריסת ה-XML שמגדיר את המבנה של ממשק המשתמש של האפליקציה. הקובץ נמצא בספרייהres/layout
. בקובץactivity_maps.xml
מצהיר על מקטע שכולל את הרכיבים הבאים:tools:context
מגדיר את פעילות ברירת המחדל של המקטע ל-MapsActivity
, כפי שמוגדר בקובץ הפעילות של המפות.android:name
מגדיר את שם המחלקה של המקטע כ-SupportMapFragment
, שהוא סוג המקטע המשמש בקובץ הפעילות של המפות.
קובץ פריסת ה-XML מכיל את הקוד הבא:
<fragment xmlns:android="http://schemas.android.com/apk/res/android" xmlns:map="http://schemas.android.com/apk/res-auto" xmlns:tools="http://schemas.android.com/tools" android:id="@+id/map" android:name="com.google.android.gms.maps.SupportMapFragment" android:layout_width="match_parent" android:layout_height="match_parent" tools:context=".MapsActivity" />
פריסה והרצה של האפליקציה
לאחר שתפעילו את האפליקציה, תוצג מפה שבמרכזה סידני אוסטרליה עם סמן על העיר, כפי שניתן לראות בצילום המסך הבא.
כדי לפרוס ולהפעיל את האפליקציה:
- ב-Android Studio, לוחצים על האפשרות הפעלה בתפריט (או על סמל לחצן ההפעלה) כדי להריץ את האפליקציה.
- כשמתבקשים לבחור מכשיר, בוחרים באחת מהאפשרויות הבאות:
- בוחרים את מכשיר Android שמחובר למחשב.
- לחלופין, לוחצים על לחצן הבחירה Launch emulator (אמולטור ההפעלה) ובוחרים את המכשיר הווירטואלי שהגדרתם.
- לוחצים על אישור. מערכת Android Studio תפעיל את Gradle כדי ליצור את האפליקציה שלך, ולאחר מכן תציג את התוצאות במכשיר או באמולטור שלך. ייתכן שיחלפו כמה דקות עד שהאפליקציה תושק.
השלבים הבאים
הגדרת מפה: במסמך הזה מוסבר איך לקבוע את ההגדרות הראשוניות וזמן הריצה של המפה, כמו מיקום המצלמה, סוג המפה, רכיבי ממשק המשתמש ותנועות.
הוספת מפה לאפליקציה ל-Android (Kotlin): ה-codelab ידריך אתכם באפליקציה שמדגימה תכונות נוספות של ה-SDK של מפות Google ל-Android.
שימוש בספריית KTX של מפות Google ל-Android: ספריית התוספות של Kotlin (KTX) מאפשרת להשתמש בכמה תכונות של שפת Kotlin בזמן השימוש ב-SDK של מפות Google ל-Android.
אלא אם צוין אחרת, התוכן של דף זה הוא ברישיון Creative Commons Attribution 4.0 ודוגמאות הקוד הן ברישיון Apache 2.0. לפרטים, ניתן לעיין במדיניות האתר Google Developers. Java הוא סימן מסחרי רשום של חברת Oracle ו/או של השותפים העצמאיים שלה.
עדכון אחרון: 2024-03-22 (שעון UTC).
[] []