בחירה של גרסת ה-SDK

Places SDK ל-Android בגרסה 3.4.0 תומך בשתי גרסאות SDK: Places SDK for Android הוא ה-SDK הקיים ו-Places SDK for Android (חדש) היא גרסת הדור הבא של ה-SDK.

לאחר ההשקה של Places SDK ל-Android גרסה 3.4.0, המשימה הראשונה שלכם היא להחליט באיזה SDK להשתמש. הדבר נכון אם אתם לקוחות חדשים או לקוחות קיימים שכבר משתמשים ב-SDK. המדריך הזה יעזור לכם להבין את ההבדלים העיקריים בין שתי ערכות ה-SDK.

איך בוחרים את גרסת ה-SDK

בקצה העורפי, Places SDK ל-Android מסתמכ על שירות Places API, 'Places API (חדש)' או Places API. כדי להשתמש ב-Places SDK ל-Android, צריך להפעיל את השירות Places API בפרויקט שלכם ב-Google Cloud.

ב-Android, יש שתי פעולות שאפשר לבצע כדי לקבוע באילו ממשקי API תוכלו להשתמש באפליקציה:

  1. בפרויקט, עליכם להפעיל את Places API (חדש), Places API או את שניהם במפתח ה-API שלכם, בהתאם למה שאתם מתכוונים להשתמש בו באפליקציה.

  2. מפעילים את האפליקציה באמצעות קריאה לשיטה Places.initializeWithNewPlacesApiEnabled() או ל-method Places.initialize().

בחירת SDK

הגרסה של שירות Places API שמפעילים שולטים בגרסת ה-SDK שבה האפליקציה משתמשת:

  • שניהם: הפעלה של כל התכונות עבור Places SDK for Android ו-Places SDK for Android (חדש). משתמשים בשיטה Places.initializeWithNewPlacesApiEnabled() ובשיטה Places.initialize() כדי לשלוט בתכונות הזמינות.

  • Places API: מפעיל את Places SDK ל-Android הקיים. אין לך גישה לתכונות החדשות שנוספו ב-Place SDK עבור Android גרסה 3.4.0.

  • Places API (חדש): מפעיל את Places SDK for Android (חדש) ואת כל התכונות החדשות שמתוארות בתכונות עיקריות שנוספו ל-Places SDK for Android (חדש), אבל לא מפעילה תכונות קיימות כמו 'מקום נוכחי' ו'השלמה אוטומטית של מקום'.

מידע נוסף על בחירת השירות Places API זמין במאמר הגדרת הפרויקט ב-Google Cloud.

אתחול האפליקציה

כשמאתחלים את האפליקציה, צריך להפעיל את ה-method Places.initializeWithNewPlacesApiEnabled() או את ה-Places.initialize().

בטבלה הבאה מוצגות ההשפעות של הפעלת כל SDK וקריאה לכל שיטת אתחול. לדוגמה, אם תפעילו את Places SDK (חדש) ותקראו ל-Places.initializeWithNewPlacesApiEnabled(), תוכלו להשתמש בכל ממשקי ה-API החדשים ובכל ממשקי ה-API הקיימים.

אם תפעיל את Places SDK (חדש) ותתקשר למספר Places.initialize(), לא תוכל להשתמש בתכונות החדשות של 'פרטי מקום' ו'תמונות מקום', אבל תוכל להפעיל את 'חיפוש טקסט' החדש. אם לא תפעיל את Places API, לא תוכל לגשת לגרסה הישנה של 'פרטי מקום' אבל עדיין תוכל לקרוא לגרסה החדשה של 'חיפוש טקסט'.

גרסה ממשקי API ה-SDK מופעל במפתח API שיטת האתחול
Places API Places API (חדש) initialize() initializeWithNewPlacesApiEnabled()
v3.3.0 פרטי מקומות
פרטי מקומות (חדשים)
מטא-נתונים של תמונות (חדש)
חיפוש טקסט (חדש) בכל אחת מהשיטות
v3.4.0 תמונה URI (חדשה)
מפת סיביות של תמונה בכל אחת מהשיטות
CurrentPlace בכל אחת מהשיטות
השלמה אוטומטית בכל אחת מהשיטות

באיזה SDK בחרת?

כדי להחליט באיזו גרסה לבחור:

  1. אם אתם לקוחות חדשים שרק מתחילים להשתמש ב-Places SDK ל-Android, התחילו עם Places API (New) ו-SDK החדש.

  2. אם אתם מפתחי Kotlin, תוכלו להשתמש בכל אחד מה-SDK, אבל התכונות החדשות ב-Places SDK for Android (New) זמינות רק ב-Java בגרסה 3.4.0.

  3. אם אתם לקוחות קיימים ומשתמשים באסימוני סשן, המשיכו להשתמש ב-SDK הקיים. Places SDK ל-Android (חדש) לא תומך כרגע באסימוני הפעלה.

  4. אם אתם לקוחות קיימים, תוכלו להמשיך להשתמש ב-SDK הקיים. עם זאת, כדי לנצל את שיפורי הביצועים ואת שיפורי התכונות של Places SDK ל-Android (חדש), תוכל להשתמש ב-SDK החדש.

    המעבר ל-SDK החדש לא נדרש. צריך רק:

    1. מפעילים את האפשרות Places API (New) (חדש) במפתח ה-API שבו נעשה שימוש באפליקציה. מידע נוסף זמין במאמר שימוש במפתחות API.
    2. בקטע dependencies בקובץ build.gradle ברמת המודול, מעדכנים את התלות places ומוסיפים את התלות kotlin-bom:

        dependencies {
            implementation(platform("org.jetbrains.kotlin:kotlin-bom:1.8.0"))
            implementation 'com.google.android.libraries.places:places:3.3.0'
        }

      מידע נוסף על התלות kotlin-bom זמין במאמר שימוש בגרסה העדכנית ביותר של kotlin-stdlib ביחסי תלות טרנזיטיביים.

    3. צריך לעדכן את האפליקציה הקיימת כדי לקרוא לשיטה החדשה Places.initializeWithNewPlacesApiEnabled() להפעלת האפליקציה. מידע נוסף זמין במאמר אתחול לקוח ה-API של מקומות Google.

    האפליקציות הקיימות ימשיכו לפעול ללא שינוי, אבל עכשיו אתם יכולים ליהנות מכל תכונות ה-SDK החדשות.

תכונות עיקריות שנוספו ל-Place SDK עבור Android (חדש)

סעיף זה עוסק בתכונות עיקריות שנוספו ל-Places SDK ל-Android (חדש).

הטמעה בפלטפורמה הסטנדרטית של Google Cloud

Places SDK ל-Android (חדש) מוטמע בתשתית השירות ב-Google Cloud. ההטמעה הזו מספקת פלטפורמה מאובטחת ומהימנה יותר. העיצוב הסטנדרטי הזה מספק רמה של עקביות בין ערכות ה-SDK שמשפרות את יעילות הפיתוח עם Places SDK ל-Android (חדש).

ביצועים משופרים

Places SDK ל-Android (חדש) מספק ביצועים משופרים, ולכן כדאי להחליף אפליקציות שמשתמשות ב-SDK הקיים.

שירות חדש של חיפוש טקסט

חיפוש טקסט מחזיר מידע על קבוצת מקומות על סמך מחרוזת, לדוגמה "פיצה בתל אביב" או "חנויות נעליים ליד אוטווה" או "הרצל 123". בתגובה לשירות מוצגת רשימה של מקומות שתואמים למחרוזת הטקסט ולכל הטיה של המיקום שהוגדרה.

נתוני תגובות חדשים נוספו לפרטי המקום ולתמונות של המקום

  • Place Details כולל עכשיו את המחלקה החדשה Review של התגובה באובייקט Place של התגובה. המחלקה מקום כוללת את השיטה החדשה getReviews() שתומכת בשדה הזה. אפשר להתקשר אל getReviews() כדי להחזיר עד חמש ביקורות על מקום.

  • תמונה של מקום מוסיפה את AuthorAttributions לכיתה PhotoMetadata. AuthorAttributions מכיל List של אובייקטים AuthorAttribution.

נוספה תגובת URI חדשה לתמונות של מקום

עכשיו אפשר להשתמש ב'תמונות מקום' כדי להחזיר URI למפת סיביות של תמונה. בעבר, היה אפשר להחזיר רק את מפת הסיביות של התמונה עצמה.

תמחור פשוט

התמחור פשוט יותר באמצעות Places SDK ל-Android (חדש), כך שאתם משלמים רק על הנתונים שבהם אתם משתמשים. תמחור פשוט יותר מיושם באמצעות רשימות של שדות, שנקראות גם מסכות שדות.

ב'פרטי מקום' וב'חיפוש טקסט' משתמשים ברשימות שדות כדי לקבוע את רשימת השדות שיחזרו בתשובה. לאחר מכן תחויבו רק על הנתונים המבוקשים. מומלץ להשתמש ברשימת שדות כדי להבטיח שלא תבקשו נתונים מיותרים, וכך להימנע מזמן עיבוד ומחיובים מיותרים.

למידע מפורט על התמחור של שתי ערכות ה-SDK, ראו שימוש וחיוב.

סוגי מקומות מורחבים

ערכת ה-SDK החדשה מוסיפה את סוגי המקומות שמוצגים בטבלה הבאה. הסוגים האלה מוחזרים כחלק מהתשובה 'פרטי מקום' ו'חיפוש טקסט'. אפשר גם להשתמש בסוגים חדשים אלה ובסוגים קיימים בחיפוש באמצעות 'חיפוש טקסט'. הסוגים החדשים כלולים בטבלה א'.

סוג
american_restaurant discount_store ice_cream_shop sandwich_shop
amusement_center dog_park indian_restaurant school_district
athletic_field electric_vehicle_charging_station indonesian_restaurant seafood_restaurant
auto_parts_store event_venue italian_restaurant ski_resort
banquet_hall extended_stay_hotel japanese_restaurant spanish_restaurant
barbecue_restaurant חווה korean_restaurant sporting_goods_store
barber_shop אירוח בחווה lebanese_restaurant sports_club
bed_and_breakfast fast_food_restaurant Marina sports_complex
brazilian_restaurant ferry_terminal שוק steak_house
breakfast_restaurant fitness_center medical_lab sushi_restaurant
brunch_restaurant french_restaurant mediterranean_restaurant swimming_pool
bus_stop gift_shop mexican_restaurant חייט
camping_cabin golf_course middle_eastern_restaurant telecommunications_service_provider
cell_phone_store greek_restaurant מוטל thai_restaurant
child_care_agency grocery_store national_park transit_depot
chinese_restaurant guest_house park_and_ride truck_stop
coffee_shop hair_salon performing_arts_theater turkish_restaurant
community_center hamburger_restaurant pizza_restaurant vegan_restaurant
יועץ מנחת מסוקים playground vegetarian_restaurant
convention_center hiking_area פעוטות וגן vietnamese_restaurant
קוטג' historical_landmark private_guest_room visitor_center
courier_service home_improvement_store ramen_restaurant wedding_venue
cultural_center אכסניה resort_hotel סיטונאי
dental_clinic hotel rest_stop
יחד עם הסוגים החדשים האלה, Places API (חדש) העביר את הסוגים הבאים מטבלה ב' מטבלה א'. כלומר, עכשיו אפשר להשתמש בסוגים האלה כחלק מהחיפוש:
  • country
  • administrative_area_level_1
  • administrative_area_level_2
  • postal_code
  • locality