בניית אפליקציה של נקודות עניין

במדריך הזה מפורטות התכונות השונות של ספריית האפליקציות לרכב, שבהן אפשר להשתמש כדי להטמיע את הפונקציונליות של אפליקציית הנקודות העניין (POI).

הצהרה על תמיכה בקטגוריה במניפסט

באפליקציה צריך להצהיר על androidx.car.app.category.POI קטגוריית אפליקציית הרכב במסנן ה-Intent של CarAppService.

בדוגמה הבאה אפשר לראות איך להצהיר על קטגוריית האפליקציה:

<application>
    ...
   <service
       ...
        android:name=".MyCarAppService"
        android:exported="true">
      <intent-filter>
        <action android:name="androidx.car.app.CarAppService" />
        <category android:name="androidx.car.app.category.POI"/>
      </intent-filter>
    </service>
    ...
<application>

גישה לתבניות של מפות

אפליקציות של נקודות עניין יכולות לגשת לחבילות PlaceListMapTemplate ו-MapWithContentTemplate.

ה-PlaceListMapTemplate מיועד במיוחד להצגת רשימה של נקודות עניין לצד מפה שמוצגת על ידי המארח.

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

כדי לגשת לתבניות האלה, האפליקציה צריכה להצהיר על ההרשאה androidx.car.app.MAP_TEMPLATES בקובץ AndroidManifest.xml שלה:

<manifest ...>
  ...
  <uses-permission android:name="androidx.car.app.MAP_TEMPLATES"/>
  ...
</manifest>

רענון התוכן של PlaceListMapTemplate

אתם יכולים לאפשר לנהגים לרענן את התוכן בלחיצת כפתור בזמן שהם מעיינים ברשימות של מקומות שנוצרו באמצעות PlaceListMapTemplate. מטמיעים את השיטה onContentRefreshRequested של הממשק OnContentRefreshListener ומשתמשים ב-PlaceListMapTemplate.Builder.setOnContentRefreshListener כדי להגדיר את מאזין התבנית כדי לאפשר רענון של הרשימה.

בקטע הקוד הבא אפשר לראות איך מגדירים את מאזין התבנית:

return PlaceListMapTemplate.Builder()
    // ...
    .setOnContentRefreshListener {
        // Execute any desired logic
        // ...
        // Then call invalidate() so onGetTemplate() is called again
        invalidate()
    }
    .build()

לחצן הרענון מוצג רק בכותרת של PlaceListMapTemplate אם יש ערך למאזין.

כשמשתמש לוחץ על לחצן הרענון, מתבצעת קריאה לשיטה onContentRefreshRequested של ההטמעה של OnContentRefreshListener. בתוך onContentRefreshRequested, מבצעים קריאה ל-method‏ Screen.invalidate. המארח מתקשר חזרה אל שיטת Screen.onGetTemplate של האפליקציה כדי לאחזר את התבנית עם התוכן המעודכן. מידע נוסף על רענון תבניות זמין במאמר רענון התוכן של תבנית. כל עוד התבנית הבאה שמוחזרת על ידי onGetTemplate היא מאותו סוג, היא נספרת כרענון ולא נספרת במכסת התבניות.

שילוב עם Google Assistant באמצעות פעולות באפליקציה

אפשר להוסיף לאפליקציית הנקודות העניין שלך תמיכה בהפעלה קולית באמצעות Assistant, כדי לאפשר למשתמשים לחפש נקודות עניין באמצעות פקודות קוליות כמו "Ok Google, find nearby charging stations on ExampleApp". הוראות מפורטות זמינות במאמר בנושא פעולות באפליקציות למכירת רכב.