ساختن برنامه آب‌وهوا

برنامه‌های آب‌وهوا به کاربران امکان می‌دهند اطلاعات آب‌وهوای مربوط به مکان فعلی یا مسیرشان را ببینند. برنامه‌های آب‌وهوا همچنین می‌توانند قابلیت‌های ناوبری ارائه دهند – برای جزئیات بیشتر درباره ساخت برنامه‌های ناوبری، به ساخت برنامه‌های ناوبری برای خودروها مراجعه کنید.

دسته آب‌وهوا را در مانیفست خود اعلام کنید

برنامه شما باید 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 برای ماشین‌ها درباره نحوه ساختن برنامه‌های «کتابخانه برنامه ماشین» مراجعه کنید. همچنین، حتماً با دستورالعمل‌های کیفیت برنامه خودرو برای برنامه‌های آب‌وهوا آشنا شوید، زیرا برنامه‌تان براساس این دستورالعمل‌ها بازبینی خواهد شد.

کشیدن نقشه

برنامه‌های آب‌وهوا می‌توانند به MapWithContentTemplate دسترسی داشته باشند که می‌توان از آن برای نمایش فهرست‌ها و انواع دیگر محتوا درکنار نقشه‌ای که توسط برنامه شما ارائه می‌شود استفاده کرد. برای جزئیات بیشتر درباره استفاده از این الگو، به ترسیم نقشه‌ها مراجعه کنید.

برای دسترسی به الگو، برنامه‌تان باید اجازه 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>