تطبيق إنشاء نقاط اهتمام

يوضّح هذا الدليل بالتفصيل الميزات المختلفة لـ Car App Library التي يمكنك استخدامها لتنفيذ وظائف تطبيق نقاط الاهتمام (POI).

توضيح إتاحة الفئة في البيان

يجب أن يذكر تطبيقك androidx.car.app.category.POI فئة تطبيق السيارة في فلتر الأهداف على 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، المصمّمة خصيصًا لعرض قائمة بنقاط الاهتمام بجانب خريطة يعرضها المضيف.

للوصول إلى هذا النموذج، يجب أن يذكر تطبيقك الإذن androidx.car.app.MAP_TEMPLATES في ملف AndroidManifest.xml الخاص به:

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

إعادة تحميل محتوى PlaceListMapTemplate

يمكنك السماح للسائقين بإعادة تحميل المحتوى بنقرة زر واحدة أثناء تصفُّح قوائم الأماكن التي تم إنشاؤها باستخدام PlaceListMapTemplate. نفِّذ طريقة OnContentRefreshListener للواجهة onContentRefreshRequested واستخدِم PlaceListMapTemplate.Builder.setOnContentRefreshListener لضبط أداة معالجة البيانات في النموذج لتفعيل إعادة تحميل القائمة.

يوضّح المقتطف التالي كيفية ضبط أداة معالجة الحدث في النموذج:

Kotlin

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

Java

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

لا يظهر زر إعادة التحميل في عنوان PlaceListMapTemplate إلا إذا كانت المستمع قيمة.

عندما ينقر المستخدم على زر إعادة التحميل، يتم استدعاء طريقة onContentRefreshRequested لتنفيذ OnContentRefreshListener. ضمن onContentRefreshRequested، استدعِ الطريقة Screen.invalidate. بعد ذلك، يتصل المضيف مرة أخرى بطريقة Screen.onGetTemplate في تطبيقك لاسترداد النموذج مع المحتوى الذي تم تحديثه. يمكنك الاطّلاع على إعادة تحميل محتوى نموذج للحصول على مزيد من المعلومات حول إعادة تحميل النماذج. طالما أنّ النموذج التالي الذي يعرضه onGetTemplate من النوع نفسه، يتم احتسابه كإعادة تحميل ولا يتم احتسابه ضمن حصة النموذج.

الدمج مع "مساعد Google" باستخدام "المهام في التطبيقات"

يمكنك تفعيل ميزة الصوت في تطبيق نقطة الاهتمام باستخدام "مساعد Google" للسماح للمستخدمين بالبحث عن نقاط اهتمام من خلال طرح عبارات مثل "Ok Google، أريد البحث عن محطات الشحن القريبة على ExampleApp". للحصول على تعليمات تفصيلية، اطّلِع على المهام في التطبيقات للسيارات.