برای سادهسازی فرآیند آوردن برنامههای تلفن همراه به دستگاههای دارای سیستم عامل اندروید اتوموبیل، برخی از خودروها دارای حالت سازگاری هستند که مشکلات رایج هنگام آوردن برنامههای تلفن همراه موجود به خودروها را برطرف میکند.
اگرچه این حالت سازگاری توسط برنامهی Car ready mobile apps استفاده میشود، برنامههایی که جزئی از آن برنامه نیستند نیز میتوانند در آن اجرا شوند.
حالت سازگاری را درک کنید
حالت سازگاری با سیستم عامل اندروید اتوموبیل، یک ویژگی نرمافزاری است که در برخی از خودروها موجود است تا تجربه کاربری برنامههای ساخته شده برای دستگاههای تلفن همراه را هنگام اجرا بر روی سیستم عامل اندروید اتوموبیل بهبود بخشد.
ناوبری برگشت
برخلاف سایر فرم فاکتورها، دستگاههای دارای سیستم عامل اندروید اتو نیازی به داشتن بکآپدانس سختافزاری یا نرمافزاری ندارند. حالت سازگاری با الزام به بکآپدانس ارائه شده توسط سیستم، مانند دکمه سختافزاری، دکمه نرمافزاری یا ژست حرکتی، این مشکل را برطرف میکند. این بدان معناست که برنامهها هنگام هدف قرار دادن دستگاههایی که فقط حالت سازگاری دارند، نیازی به ارائه کنترلهای ناوبری بک خود ندارند.

با حالت سازگاری

بدون حالت سازگاری
رندرینگ منطقه امن
در خودروها، عناصر نرمافزاری و سختافزاری مانند نوارهای سیستم و بریدگیهای صفحه نمایش میتوانند فرضیاتی را که هنگام توسعه برنامهها در درجه اول برای دستگاههای تلفن همراه در نظر گرفته شده است، باطل کنند. حالت سازگاری با رندر برنامهها در یک منطقه امن، این مشکل را برطرف میکند.
مقیاسبندی چگالی
از آنجا که فاصله تعامل در خودروها بیشتر از سایر دستگاههای صفحه نمایش بزرگ است، اهداف لمسی و اندازه فونتها اغلب هنگام کار در خودرو کوچکتر از حد توصیه شده هستند. حالت سازگاری با اجازه دادن به تولیدکنندگان اصلی تجهیزات (OEM) برای تعیین ضریب مقیاسبندی DPI مورد استفاده هنگام رندر برنامهها، این مشکل را برطرف میکند.
چرخه حیات فعالیت
همانطور که در بخش «افزودن پشتیبانی از سیستم عامل اندروید خودرو به برنامه پارک شده» توضیح داده شد، سیستم عامل هنگام ورود خودرو به حالت رانندگی، فعالیتهای برنامه شما را به طور خودکار مسدود میکند تا حواسپرتی راننده کاهش یابد. در دستگاههای دارای حالت سازگاری، رابط کاربری مسدودکننده OEM نباید شفاف باشد، بنابراین برنامه شما دیگر قابل مشاهده نیست و هنگام مسدود شدن به حالت چرخه عمر متوقف شده منتقل میشود.
پیکربندی حالت سازگاری
به طور پیشفرض، اکتیویتیهای برنامه شما در حالت سازگاری اجرا میشوند، زمانی که دستگاه از آن پشتیبانی کند. اگر عنصر <uses-feature> برای ویژگی android.hardware.type.automotive در مانیفست وجود داشته باشد، اکتیویتیها در حالت سازگاری اجرا نمیشوند :
<manifest ...>
...
<uses-feature android:name="android.hardware.type.automotive" ...>
...
</manifest>
اگر ترجیح میدهید که فعالیتهای شما در حالت سازگاری نمایش اجرا شوند، صرف نظر از عنصر <uses-feature> که قبلاً توضیح داده شد، میتوانید عنصر <meta-data> زیر را در مانیفست برنامه خود اضافه کنید:
<application ...>
...
<meta-data android:name="android.software.car.display_compatibility" android:value="true"/>
...
</application>
برنامه خود را در حالت سازگاری آزمایش کنید
برای آزمایش برنامه خود در حالت سازگاری، میتوانید از تصاویر سیستم عمومی با حالت سازگاری یا تصاویر سیستم Android Automotive OS روی تبلت Pixel استفاده کنید.
پشتیبانی دستگاه را تعیین کنید
دستگاههایی که از حالت سازگاری سیستم عامل اندروید اتوموبیل پشتیبانی میکنند، باید ویژگی سیستم android.software.car.display_compatibility را اعلام کنند. برای کشف اینکه کدام دستگاهها از این ویژگی پشتیبانی میکنند، میتوانید از کاتالوگ دستگاهها در کنسول پلی استفاده کنید.