Погодные приложения позволяют пользователям видеть соответствующую информацию о погоде, связанную с их текущим местоположением или по маршруту. Погодные приложения также могут предоставлять возможности навигации – см. Создание навигационных приложений для автомобилей для получения более подробной информации о создании навигационных приложений.
Укажите категорию погоды в вашем манифесте
Ваше приложение должно объявить категорию автомобильного приложения androidx.car.app.category.WEATHER
в фильтре намерений своего 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.WEATHER"/>
</intent-filter>
</service>
...
<application>
Объявить поддержку навигации
Если ваше приложение также может использоваться для навигации, оно также должно следовать указаниям, приведенным в разделе Объявление поддержки навигации в вашем манифесте при объявлении своей категории. Фильтр намерений, используемый для объявления категории вашего приложения, должен включать обе категории:
<intent-filter>
<action android:name="androidx.car.app.CarAppService" />
<category android:name="androidx.car.app.category.WEATHER"/>
<category android:name="androidx.car.app.category.NAVIGATION"/>
</intent-filter>
Реализуйте функциональность вашего приложения
Чтобы реализовать свое приложение, обратитесь к разделу Использование библиотеки приложений Android for Cars, чтобы узнать, как создаются приложения Car App Library. Также обязательно ознакомьтесь с рекомендациями по качеству приложений Car app для погодных приложений , поскольку ваше приложение будет проверяться на соответствие этим рекомендациям.
Рисовать карты
Приложения погоды могут получить доступ к MapWithContentTemplate
, который может использоваться для отображения списков и других типов контента вместе с картой, отображаемой вашим приложением. Подробнее об использовании этого шаблона см. в разделе Draw maps .
Чтобы получить доступ к шаблону, вашему приложению необходимо объявить разрешение androidx.car.app.MAP_TEMPLATES
или androidx.car.app.NAVIGATION_TEMPLATES
в файле AndroidManifest.xml
:
<manifest ...>
...
<!-- Use the MAP_TEMPLATES permission if your app doesn't provide navigation functionality -->
<uses-permission android:name="androidx.car.app.MAP_TEMPLATES"/>
<!-- Use the NAVIGATION_TEMPLATES permission if your app provides navigation functionality -->
<uses-permission android:name="androidx.car.app.NAVIGATION_TEMPLATES"/>
...
</manifest>