يوضّح هذا الدليل الميزات المختلفة في "مكتبة تطبيقات السيارات" التي يمكنك استخدامها لتنفيذ وظائف تطبيقك الخاص بنقاط الاهتمام.
الإفصاح عن دعم الفئة في ملف البيان
يحتاج تطبيقك إلى الإفصاح عن 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
وMapWithContentTemplate.
تم تصميم PlaceListMapTemplate خصيصًا لعرض قائمة بنقاط الاهتمام بجانب خريطة يعرضها المضيف.
يمكن استخدام MapWithContentTemplate لعرض القوائم وأنواع المحتوى الأخرى بجانب خريطة يعرضها تطبيقك. يمكنك الاطّلاع على عرض الخرائط لمزيد من التفاصيل حول استخدام هذا القالب.
للوصول إلى هذه النماذج، يحتاج تطبيقك إلى الإفصاح عن الإذن androidx.car.app.MAP_TEMPLATES في ملف AndroidManifest.xml:
<manifest ...>
...
<uses-permission android:name="androidx.car.app.MAP_TEMPLATES"/>
...
</manifest>
إعادة تحميل محتوى PlaceListMapTemplate
يمكنك تزويد السائقين بطريقة لإعادة تحميل المحتوى من خلال النقر على زر أثناء
تصفُّح قوائم الأماكن التي تم إنشاؤها باستخدام
PlaceListMapTemplate.
نفِّذ واجهة
OnContentRefreshListener
طريقة onContentRefreshRequested
، واستخدِم
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، استدعِ طريقة
Screen.invalidate. بعد ذلك، يعاود المضيف الاتصال بطريقة
Screen.onGetTemplate
في تطبيقك لاسترداد القالب الذي يتضمّن المحتوى الذي تم تحديثه. يمكنك الاطّلاع على إعادة تحميل
محتوى قالب لمزيد من المعلومات حول
إعادة تحميل القوالب. طالما أنّ القالب التالي الذي يتم عرضه من خلال onGetTemplate هو من النوع نفسه، يتم احتسابه كعملية إعادة تحميل ولا يتم احتسابه ضمن حصة القوالب.
الدمج مع "مساعد Google" باستخدام "مهامّ في التطبيقات"
يمكنك تفعيل ميزة التحكم الصوتي في تطبيق نقاط الاهتمام باستخدام "مساعد Google" للسماح للمستخدمين بالبحث عن نقاط الـ اهتمام من خلال طرح طلبات مثل "Ok Google، ابحث عن محطات شحن قريبة على ExampleApp". للحصول على تعليمات مفصّلة، يمكنك الاطّلاع على مهامّ في التطبيقات للسيارات.