สร้างแอปจุดสนใจ

คู่มือนี้จะอธิบายรายละเอียดเกี่ยวกับฟีเจอร์ต่างๆ ของ Car App Library ที่คุณใช้เพื่อติดตั้งใช้งานฟังก์ชันการทำงานของแอปจุดที่น่าสนใจ (POI)

ประกาศการรองรับหมวดหมู่ในไฟล์ Manifest

แอปของคุณต้องประกาศ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>

เข้าถึงเทมเพลตแผนที่

แอป POI สามารถเข้าถึง PlaceListMapTemplate และ MapWithContentTemplateได้

PlaceListMapTemplate ออกแบบมาโดยเฉพาะเพื่อแสดงรายการ POI ควบคู่ไปกับแผนที่ที่โฮสต์แสดงผล

คุณสามารถใช้ 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 เพื่อตั้งค่า Listener ในเทมเพลตเพื่อเปิดใช้การรีเฟรชรายการ

ข้อมูลโค้ดต่อไปนี้แสดงวิธีตั้งค่า Listener ในเทมเพลต

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

ปุ่มรีเฟรชจะแสดงในส่วนหัวของ PlaceListMapTemplate ก็ต่อเมื่อ Listener มีค่า

เมื่อผู้ใช้คลิกปุ่มรีเฟรช ระบบจะเรียกใช้เมธอด onContentRefreshRequested ของการติดตั้งใช้งาน OnContentRefreshListener ภายใน onContentRefreshRequested ให้เรียกใช้ Screen.invalidate เมธอด จากนั้นโฮสต์จะเรียกกลับไปยัง Screen.onGetTemplate เมธอดของแอปเพื่อดึงข้อมูลเทมเพลตที่มีเนื้อหาที่รีเฟรชแล้ว ดูข้อมูลเพิ่มเติมเกี่ยวกับการรีเฟรชเทมเพลตได้ที่รีเฟรช เนื้อหาของเทมเพลต ตราบใดที่เทมเพลตถัดไปที่แสดงผลโดย onGetTemplate เป็นประเภทเดียวกัน ระบบจะนับเป็นการรีเฟรชและไม่นับรวมในโควต้าเทมเพลต

ผสานรวมกับ Gemini หรือ Google Assistant โดยใช้การดำเนินการของแอป

เปิดใช้เสียงในแอป POI โดยใช้ Gemini หรือ Google Assistant เพื่อให้ผู้ใช้ค้นหาจุด สนใจได้โดยถามคำถามต่างๆ เช่น "Ok Google ค้นหาสถานีชาร์จที่อยู่ใกล้เคียงใน ExampleApp" ดูวิธีการอย่างละเอียดได้ที่ การดำเนินการของแอปสำหรับรถยนต์