اعلان ها در سیستم عامل Android Automotive

اعلان‌ها اطلاعات کوتاه و به‌موقع درباره رویدادها از برنامه شما در حالی که از آن استفاده نمی‌شود، در اختیار رانندگان قرار می‌دهند. اعلان‌ها می‌توانند در مرکز اعلان‌ها ظاهر شوند و برخی از اعلان‌ها نیز می‌توانند به‌عنوان اعلان‌های هدآپ روی نمایشگر ظاهر شوند. برای ایجاد اعلان‌ها برای سیستم‌عامل Android Automotive، از همان NotificationBuilder API استفاده می‌کنید که برای دستگاه‌های دیگر استفاده می‌کنید. با این حال، برای کمک به اطمینان از ایمنی رانندگان و به حداقل رساندن حواس‌پرتی، برخی از روش‌ها و کلاس‌های API محدود شده‌اند یا رفتار متفاوتی دارند.

تفاوت اعلان ها در خودروها

برای ایجاد یک محیط رانندگی ایمن و عاری از حواس‌پرتی، اعلان‌ها در سیستم‌عامل Android Automotive به روش‌های زیر با اعلان‌های دستگاه‌های دیگر متفاوت هستند:

  • تعامل ساده با کاربر
  • محدودیت های UX بر اساس وضعیت درایو

تعامل ساده با کاربر

برای اطمینان از اینکه رانندگان می‌توانند روی جاده تمرکز کنند، اعلان‌ها در خودرو دارای یک مدل تعامل کاربر ساده با ویژگی‌های زیر هستند:

بدون کنترل پیچیده
اعلان‌ها به کنترل‌های پیچیده اجازه نمی‌دهند، مانند ضربه زدن برای گسترش یک اعلان، فشار طولانی یک اعلان برای گزینه‌های اضافی، یا استفاده از کنترل‌های مبتنی بر حرکات با طول کشیدن انگشت.
صداهای اعلان
اعلان‌ها فقط در صورتی صدا پخش می‌کنند که اعلان هدآپ را راه‌اندازی کنند.
دکمه های پخش خودکار و بی صدا برای اعلان های پیام

سیستم عامل Android Automotive به طور خودکار دکمه‌های Play و Mute را به همه اعلان‌های پیام‌رسانی سازگار با خودرو اضافه می‌کند.

  • Play: با استفاده از دستیار دیجیتالی پیش‌فرض کاربر، مانند Google Assistant یا سیستم تبدیل متن به گفتار پیش‌فرض خودرو، اعلان را برای راننده می‌خواند.
  • بی‌صدا: از ظاهر شدن اعلان‌های هدآپ برای پیام‌های بعدی در مکالمه برای بقیه درایو جلوگیری می‌کند. اعلان‌های پیام از یک مکالمه بی‌صدا همچنان در مرکز اعلان ظاهر می‌شوند و راننده همچنین می‌تواند مکالمه را از مرکز اعلان‌ها لغو کند.

گزینه های نمایش ساده اعلان ها

RemoteViews و نمایش‌های محتوای سفارشی پشتیبانی نمی‌شوند. علاوه بر این، سبک‌های اعلان زیر پشتیبانی نمی‌شوند:

  • BigPictureStyle
  • BigTextStyle
  • InboxStyle

اگر برنامه شما با استفاده از یکی از این سبک‌های اعلان به سیستم عامل Android Automotive اعلان ارسال کند، فقط متن خلاصه نشان داده می‌شود.

مدیریت کانال اطلاع رسانی ساده

سیستم عامل Android Automotive از کانال‌های اعلان و امکانات رابط کاربری مرتبط پشتیبانی نمی‌کند تا شیوع وظایف مدیریتی غنی در دستگاه‌های خودرو کاهش یابد.

محدودیت های UX بر اساس وضعیت درایو

سیستم عامل Android Automotive شامل یک موتور محدودیت UX است. سازندگان خودرو می توانند از این موتور برای محدود کردن اعلان ها بر اساس وضعیت درایو خودرو به روش های زیر استفاده کنند:

  • کوتاه کردن رشته‌های اعلان با طول کاراکتر مشخص
  • مخفی کردن خلاصه پیام برای اعلان‌های CATEGORY_MESSAGE
  • محدود کردن تعداد اعلان‌هایی که مرکز اعلان می‌تواند نمایش دهد

انواع منابع پشتیبانی شده

به طور پیش‌فرض، سیستم‌عامل Android Automotive از یک زیرمجموعه محدود از انواع منابع پشتیبانی می‌کند که می‌توانند برای اعلان‌ها در دستگاه‌های دیگر استفاده شوند. این زیر مجموعه شامل انواع منابع زیر است:

  • قرعه کشی ها
  • نمادها
  • تصاویر

الزامات سازگاری برای اعلان های پیام رسانی

اعلان‌های پیام‌رسان برای ارائه یک تجربه کاربری ثابت و کم حواس‌پرت کننده، الزامات خاصی در سیستم عامل Android Automotive دارند.

اعلان پیام در صورتی با خودرو سازگار است که شرایط زیر را برآورده کند:

  • متعلق به دسته CATEGORY_MESSAGE است.
  • از سبک Notification.MessagingStyle استفاده می کند.
  • فقط شامل پیام های خوانده نشده است.
  • دارای یک Action علامت خوانده شده است که شرایط زیر را برآورده می کند:

    • عمل معنایی روی Action.SEMANTIC_ACTION_MARK_AS_READ تنظیم شده است.SEMANTIC_ACTION_MARK_AS_READ.
    • Action نشان می دهد که در هنگام اجرا هیچ رابط کاربری را نشان نمی دهد.
  • اگر اعلان دارای یک Action پاسخ باشد، Action شرایط زیر را برآورده می کند:

    • عمل معنایی روی Action.SEMANTIC_ACTION_REPLY تنظیم شده است.SEMANTIC_ACTION_REPLY.
    • Action نشان می دهد که در هنگام اجرا هیچ رابط کاربری را نشان نمی دهد.
    • Action شامل یک RemoteInput است.

مرکز اطلاع رسانی

تقریباً همه اعلان‌ها در مرکز اعلان‌ها ظاهر می‌شوند، حتی اگر آن اعلان‌ها نیز به‌عنوان اعلان‌های هدآپ فعال شده باشند. اعلان ها برای مدت یک درایو در مرکز اعلان ها باقی می مانند.

رانندگان می توانند با اعلان ها در مرکز اطلاع رسانی تعامل داشته باشند. بسته به سازنده خودرو، رانندگان به یک یا هر دو روش زیر به مرکز اطلاع رسانی دسترسی دارند:

  • کشیدن انگشت از بالای صفحه به پایین، مشابه کشوی اعلان در دستگاه‌های دیگر.
  • ضربه زدن روی یک دکمه در رابط سیستم.

اعلان های گروه بندی شده

اعلان‌های مرتبط به‌طور خودکار در مرکز اعلان‌ها گروه‌بندی می‌شوند، مانند کشوی اعلان در سایر دستگاه‌ها. با این حال، هنگامی که یک راننده به جای راه‌اندازی یک PendingIntent ، روی خلاصه یک گروه در مرکز اعلان ضربه می‌زند، گروه برای نمایش همه اعلان‌هایش گسترش می‌یابد.

اعلان هایی که در مرکز اعلان ظاهر نمی شوند

اعلان های زیر در مرکز اعلان ظاهر نمی شوند:

  • اعلان های Media playback اطلاعات مربوط به پخش مداوم رسانه توسط سیستم عامل Android Automotive جمع آوری شده و در یک مکان اختصاصی در رابط کاربری نمایش داده می شود. توجه داشته باشید که setMediaSession باید با یک توکن غیر تهی فراخوانی شود تا اعلان به عنوان پخش رسانه شناخته شود.
  • اعلان‌های ناوبری گام به گام برای CATEGORY_NAVIGATION .
  • اعلان‌های سرویس پیش‌زمینه برای برنامه‌های دارای امتیاز سیستم و برنامه‌هایی که با کلید پلتفرم امضا شده‌اند و سطح اهمیت آنها کمتر از IMPORTANCE_DEFAULT است.

اعلان‌های سرآغاز

اعلان‌های هدآپ به‌عنوان یک کارت اعلان در بالای صفحه ظاهر می‌شوند. از آنجایی که اعلان هدآپ توجه راننده را به خود جلب می کند، فقط زمانی اعلان هدآپ را راه اندازی می کند که اطلاعات برای درایو حیاتی، حساس به زمان و قابل اجرا باشد. فقط دسته‌های خاصی از اعلان‌ها می‌توانند اعلان heads-up را راه‌اندازی کنند.

تولیدکنندگان خودرو می‌توانند تصمیم بگیرند که آیا اجازه دهند تا زمانی که مرکز اعلان باز است، اعلان‌های هدآپ ظاهر شوند یا خیر.

چگونه برنامه ها اعلان های heads-up را فعال می کنند

برنامه‌ها بسته به اینکه آیا امتیازات سیستمی دارند یا خیر، نیازمندی‌های متفاوتی برای راه‌اندازی اعلان heads-up دارند.

برنامه های دارای امتیاز سیستم و برنامه های امضا شده با کلید پلت فرم
این برنامه می‌تواند با تنظیم اهمیت کانال اعلان روی IMPORTANCE_HIGH یا بالاتر، یک اعلان هدآپ را راه‌اندازی کند.
همه برنامه های دیگر

این برنامه می‌تواند با تنظیم اهمیت کانال اعلان روی IMPORTANCE_HIGH یا بالاتر و اطمینان از اینکه اعلان به یکی از دسته‌های زیر تعلق دارد، یک اعلان هدآپ را راه‌اندازی کند:

زندگی یک اعلان سرآغاز

پس از اینکه یک برنامه یک اعلان heads-up را راه اندازی کرد، اعلان بلافاصله روی صفحه ماشین ظاهر می شود. اگر راننده اقدامی انجام ندهد، اعلان هدآپ به‌طور خودکار پس از هشت ثانیه حذف می‌شود، مگر در موارد زیر:

  • اعلان‌های هدآپ برای برخی از تماس‌های دریافتی قابل رد نیستند، و اعلان سرآغاز تا زمانی که راننده تماس را نپذیرد یا تماس قطع نشود، باقی می‌ماند. برای واجد شرایط شدن به عنوان یک اعلان سرآغاز غیرقابل رد برای تماس ورودی، یک اعلان باید شرایط زیر را داشته باشد:

  • اگر برنامه ای اعلان را در بازه زمانی هشت ثانیه ای به روز کند، اعلان های هدآپ باقی می مانند.

وقتی اعلان سرآغاز رد می‌شود، اعلان در مرکز اعلان فهرست می‌شود، مگر اینکه یک اعلان CATEGORY_NAVIGATION باشد.

تغییرات و محدودیت‌های API اعلان برای خودروها

این بخش تفاوت‌های هر کلاس را که در آن Notifications API رفتار متفاوتی دارد یا محدودیت‌هایی برای Android Automotive OS دارد، خلاصه می‌کند.

اطلاع رسانی.سازنده

جداول 1 و 2 تغییرات و محدودیت های API را در کلاس Notification.Builder توضیح می دهند.

جدول 1 . تغییرات در روش های عمومی برای Notification.Builder

روش های عمومی اثر توضیحات

addAction()

بدون عملیات مشروط اعلان‌های Notification.MessagingStyle باید اقدامات مشخص‌شده در الزامات سازگاری را اضافه کنند. هر اقدام اضافی که اضافه می شود به عنوان دکمه اعلان نمایش داده نمی شود.

createBigContentView()

createContentView()

createHeadsUpContentView()

setContent()

setCustomBigContentView()

setCustomContentView()

setCustomHeadsUpContentView()

بدون عملیات RemoteViews و نمایش‌های محتوای سفارشی پشتیبانی نمی‌شوند.

setBadgeIconType()

setNumber()

بدون عملیات نشان‌های اعلان پشتیبانی نمی‌شوند.

setChronometerCountDown()

setUsesChronometer()

بدون عملیات تایمرهای شمارش معکوس پشتیبانی نمی شوند.
setColorized() محدودیت ها تغییر کرد

برنامه های پلت فرم امضا شده : قابل تنظیم. به طور پیش فرض مجاز است.

برنامه های دارای امتیاز سیستم : پیکربندی شده توسط پلت فرم. به طور پیش فرض غیرمجاز است.

همه برنامه های دیگر : پیکربندی شده توسط پلت فرم. به طور پیش فرض غیرمجاز است.

setFullScreenIntent() رفتار تغییر کرد هدف را به طور خودکار راه اندازی نمی کند.
setLargeIcon() رفتار تغییر کرد نمادهای بزرگ در سمت راست اعلان نشان داده شده است.
setLights() بدون عملیات دستگاه‌های دارای سیستم عامل Android Automotive چراغ‌های نشانگر LED ندارند.
setOngoing() رفتار تغییر کرد

وقتی اعلان یک اعلان سرآغاز را نیز راه‌اندازی می‌کند، رفتار متفاوت است.

setOngoing() فقط در صورتی اعلان heads-up را غیرقابل قبول می کند که اعلان heads-up برای تماس ورودی باشد. برای واجد شرایط شدن به عنوان یک اعلان head-up غیرقابل رد برای تماس ورودی، یک اعلان باید setPublicVersion() را انجام دهد.

setVisibility()

بدون عملیات حالت خصوصی پشتیبانی نمی شود.
setSettingsText() بدون عملیات اعلان‌ها از هزینه‌هایی که به تنظیمات برنامه پیوند دارند پشتیبانی نمی‌کنند. درایورها به جای آن از طریق برنامه به تنظیمات برنامه دسترسی دارند.
setTicker() بدون عملیات متن Ticker پشتیبانی نمی شود.

جدول 2 . تغییرات در کلاس‌های تودرتو برای Notification.Builder

کلاس های تو در تو اثر توضیحات

Notification.BigPictureStyle

Notification.BigTextStyle

Notification.InboxStyle

استفاده نشده است فقط متن خلاصه نشان می دهد. اعلان‌های دقیق برای این سبک‌ها پشتیبانی نمی‌شوند.
Notification.BubbleMetadata استفاده نشده است حباب ها پشتیبانی نمی شوند.
Notification.MediaStyle پنهان شده است اعلان‌های این سبک پنهان هستند. سیستم عامل Android Automotive تعاملات رابط کاربری را برای اعلان‌ها و پخش رسانه مدیریت می‌کند.
Notification.MessagingStyle رفتار تغییر کرد

اعلان‌های این سبک دارای تفاوت‌های زیر هستند:

Notification.CarExtender

Notification.WearableExtender

استفاده نشده است توسعه دهنده ها پشتیبانی نمی شوند.

Notification.Action.Builder

جدول 3 تغییرات و محدودیت های API را در کلاس Notification.Action.Builder توضیح می دهد.

جدول 3 . تغییرات در روش های عمومی برای Notification.Action.Builder

روش های عمومی اثر توضیحات
سازندگان عمومی رفتار تغییر کرد نمادهای مشخص شده در سازنده های عمومی نادیده گرفته می شوند.
addRemoteInput رفتار تغییر کرد برای به حداقل رساندن حواس پرتی راننده، یک دستیار دیجیتالی، مانند دستیار گوگل، پاسخ یک پیام را برای کاربر درج می کند. کاربران نمی توانند پیام ها را تایپ کنند.
setAllowGeneratedReplies بدون عملیات Smart Reply پشتیبانی نمی شود.
،

اعلان‌ها اطلاعات کوتاه و به‌موقع درباره رویدادها از برنامه شما در حالی که از آن استفاده نمی‌شود، در اختیار رانندگان قرار می‌دهند. اعلان‌ها می‌توانند در مرکز اعلان‌ها ظاهر شوند و برخی از اعلان‌ها نیز می‌توانند به‌عنوان اعلان‌های هدآپ روی نمایشگر ظاهر شوند. برای ایجاد اعلان‌ها برای سیستم عامل Android Automotive، از همان NotificationBuilder API استفاده می‌کنید که برای دستگاه‌های دیگر استفاده می‌کنید. با این حال، برای کمک به اطمینان از ایمنی رانندگان و به حداقل رساندن حواس‌پرتی، برخی از روش‌ها و کلاس‌های API محدود شده‌اند یا رفتار متفاوتی دارند.

تفاوت اعلان ها در خودروها

برای ایجاد یک محیط رانندگی ایمن و عاری از حواس‌پرتی، اعلان‌ها در سیستم‌عامل Android Automotive به روش‌های زیر با اعلان‌های دستگاه‌های دیگر متفاوت هستند:

  • تعامل ساده با کاربر
  • محدودیت های UX بر اساس وضعیت درایو

تعامل ساده با کاربر

برای اطمینان از اینکه رانندگان می‌توانند روی جاده تمرکز کنند، اعلان‌ها در خودرو دارای یک مدل تعامل کاربر ساده با ویژگی‌های زیر هستند:

بدون کنترل پیچیده
اعلان‌ها به کنترل‌های پیچیده اجازه نمی‌دهند، مانند ضربه زدن برای گسترش یک اعلان، فشار طولانی یک اعلان برای گزینه‌های اضافی، یا استفاده از کنترل‌های مبتنی بر حرکات با طول کشیدن انگشت.
صداهای اعلان
اعلان‌ها فقط در صورتی صدا پخش می‌کنند که اعلان هدآپ را راه‌اندازی کنند.
دکمه های پخش خودکار و بی صدا برای اعلان های پیام

سیستم عامل Android Automotive به طور خودکار دکمه‌های Play و Mute را به همه اعلان‌های پیام‌رسانی سازگار با خودرو اضافه می‌کند.

  • Play: با استفاده از دستیار دیجیتالی پیش‌فرض کاربر، مانند Google Assistant یا سیستم تبدیل متن به گفتار پیش‌فرض خودرو، اعلان را برای راننده می‌خواند.
  • بی‌صدا: از ظاهر شدن اعلان‌های هدآپ برای پیام‌های بعدی در مکالمه برای بقیه درایو جلوگیری می‌کند. اعلان‌های پیام از یک مکالمه بی‌صدا همچنان در مرکز اعلان ظاهر می‌شوند و راننده همچنین می‌تواند مکالمه را از مرکز اعلان‌ها لغو کند.

گزینه های ساده نمایش اعلان ها

RemoteViews و نمایش‌های محتوای سفارشی پشتیبانی نمی‌شوند. علاوه بر این، سبک‌های اعلان زیر پشتیبانی نمی‌شوند:

  • BigPictureStyle
  • BigTextStyle
  • InboxStyle

اگر برنامه شما با استفاده از یکی از این سبک‌های اعلان به سیستم عامل Android Automotive اعلان ارسال کند، فقط متن خلاصه نشان داده می‌شود.

مدیریت کانال اطلاع رسانی ساده

سیستم عامل Android Automotive از کانال‌های اعلان و امکانات رابط کاربری مرتبط پشتیبانی نمی‌کند تا شیوع وظایف مدیریتی غنی در دستگاه‌های خودرو کاهش یابد.

محدودیت های UX بر اساس وضعیت درایو

سیستم عامل Android Automotive شامل یک موتور محدودیت UX است. سازندگان خودرو می توانند از این موتور برای محدود کردن اعلان ها بر اساس وضعیت درایو خودرو به روش های زیر استفاده کنند:

  • کوتاه کردن رشته‌های اعلان با طول کاراکتر مشخص
  • مخفی کردن خلاصه پیام برای اعلان‌های CATEGORY_MESSAGE
  • محدود کردن تعداد اعلان‌هایی که مرکز اعلان می‌تواند نمایش دهد

انواع منابع پشتیبانی شده

به طور پیش‌فرض، سیستم‌عامل Android Automotive از یک زیرمجموعه محدود از انواع منابع پشتیبانی می‌کند که می‌توانند برای اعلان‌ها در دستگاه‌های دیگر استفاده شوند. این زیر مجموعه شامل انواع منابع زیر است:

  • قرعه کشی ها
  • نمادها
  • تصاویر

الزامات سازگاری برای اعلان های پیام رسانی

اعلان‌های پیام‌رسان برای ارائه یک تجربه کاربری ثابت و کم حواس‌پرتی، الزامات ویژه‌ای در سیستم‌عامل Android Automotive دارند.

اعلان پیام در صورتی با خودرو سازگار است که شرایط زیر را برآورده کند:

  • متعلق به دسته CATEGORY_MESSAGE است.
  • از سبک Notification.MessagingStyle استفاده می کند.
  • فقط شامل پیام های خوانده نشده است.
  • دارای یک Action علامت خوانده شده است که شرایط زیر را برآورده می کند:

    • عمل معنایی روی Action.SEMANTIC_ACTION_MARK_AS_READ تنظیم شده است.SEMANTIC_ACTION_MARK_AS_READ.
    • Action نشان می دهد که در هنگام اجرا هیچ رابط کاربری را نشان نمی دهد.
  • اگر اعلان دارای یک Action پاسخ باشد، Action شرایط زیر را برآورده می کند:

    • عمل معنایی روی Action.SEMANTIC_ACTION_REPLY تنظیم شده است.SEMANTIC_ACTION_REPLY.
    • Action نشان می دهد که در هنگام اجرا هیچ رابط کاربری را نشان نمی دهد.
    • Action شامل یک RemoteInput است.

مرکز اطلاع رسانی

تقریباً همه اعلان‌ها در مرکز اعلان‌ها ظاهر می‌شوند، حتی اگر آن اعلان‌ها نیز به عنوان اعلان‌های سرآغاز فعال شده باشند. اعلان ها در مرکز اعلان ها برای مدت یک درایو باقی می مانند.

رانندگان می توانند با اعلان ها در مرکز اطلاع رسانی تعامل داشته باشند. بسته به سازنده خودرو، رانندگان به یک یا هر دو روش زیر به مرکز اطلاع رسانی دسترسی دارند:

  • کشیدن انگشت از بالای صفحه به پایین، مشابه کشوی اعلان در دستگاه‌های دیگر.
  • ضربه زدن روی یک دکمه در رابط سیستم.

اعلان های گروه بندی شده

اعلان‌های مرتبط به‌طور خودکار در مرکز اعلان‌ها گروه‌بندی می‌شوند، مانند کشوی اعلان در سایر دستگاه‌ها. با این حال، هنگامی که یک راننده به جای راه‌اندازی یک PendingIntent ، روی خلاصه یک گروه در مرکز اعلان ضربه می‌زند، گروه برای نمایش همه اعلان‌هایش گسترش می‌یابد.

اعلان هایی که در مرکز اعلان ظاهر نمی شوند

اعلان های زیر در مرکز اعلان ظاهر نمی شوند:

  • اعلان های Media playback اطلاعات مربوط به پخش مداوم رسانه توسط سیستم عامل Android Automotive جمع آوری شده و در یک مکان اختصاصی در رابط کاربری نمایش داده می شود. توجه داشته باشید که setMediaSession باید با یک توکن غیر تهی فراخوانی شود تا اعلان به عنوان پخش رسانه شناخته شود.
  • اعلان‌های ناوبری گام به گام برای CATEGORY_NAVIGATION .
  • اعلان‌های سرویس پیش‌زمینه برای برنامه‌های دارای امتیاز سیستم و برنامه‌هایی که با کلید پلتفرم امضا شده‌اند و سطح اهمیت آنها کمتر از IMPORTANCE_DEFAULT است.

اعلان‌های سرآغاز

اعلان‌های هدآپ به‌عنوان یک کارت اعلان در بالای صفحه ظاهر می‌شوند. از آنجایی که اعلان هدآپ توجه راننده را به خود جلب می کند، فقط زمانی اعلان هدآپ را راه اندازی می کند که اطلاعات برای درایو حیاتی، حساس به زمان و قابل اجرا باشد. فقط دسته‌های خاصی از اعلان‌ها می‌توانند اعلان heads-up را راه‌اندازی کنند.

تولیدکنندگان خودرو می‌توانند تصمیم بگیرند که آیا اجازه دهند تا زمانی که مرکز اعلان باز است، اعلان‌های هدآپ ظاهر شوند یا خیر.

چگونه برنامه ها اعلان های heads-up را راه اندازی می کنند

برنامه‌ها بسته به اینکه آیا امتیازات سیستمی دارند یا خیر، نیازمندی‌های متفاوتی برای راه‌اندازی اعلان heads-up دارند.

برنامه های دارای امتیاز سیستم و برنامه های امضا شده با کلید پلت فرم
این برنامه می‌تواند با تنظیم اهمیت کانال اعلان روی IMPORTANCE_HIGH یا بالاتر، یک اعلان heads-up را راه‌اندازی کند.
همه برنامه های دیگر

این برنامه می‌تواند با تنظیم اهمیت کانال اعلان روی IMPORTANCE_HIGH یا بالاتر و اطمینان از اینکه اعلان به یکی از دسته‌های زیر تعلق دارد، یک اعلان هدآپ را راه‌اندازی کند:

زندگی یک اعلان سرآغاز

پس از اینکه یک برنامه یک اعلان heads-up را راه اندازی کرد، اعلان بلافاصله روی صفحه ماشین ظاهر می شود. اگر راننده اقدامی انجام ندهد، اعلان هدآپ به‌طور خودکار پس از هشت ثانیه حذف می‌شود، مگر در موارد زیر:

  • اعلان‌های هدآپ برای برخی از تماس‌های دریافتی قابل رد نیستند، و اعلان سرآغاز تا زمانی که راننده تماس را نپذیرد یا تماس قطع نشود، باقی می‌ماند. برای واجد شرایط شدن به عنوان یک اعلان سرآغاز غیرقابل رد برای تماس ورودی، یک اعلان باید شرایط زیر را داشته باشد:

  • اگر برنامه ای اعلان را در بازه زمانی هشت ثانیه ای به روز کند، اعلان های هدآپ باقی می مانند.

وقتی اعلان سرآغاز رد می‌شود، اعلان در مرکز اعلان فهرست می‌شود، مگر اینکه یک اعلان CATEGORY_NAVIGATION باشد.

تغییرات و محدودیت‌های API اعلان برای خودروها

این بخش تفاوت‌های هر کلاس را که در آن Notifications API رفتار متفاوتی دارد یا محدودیت‌هایی برای Android Automotive OS دارد، خلاصه می‌کند.

اطلاع رسانی.سازنده

جداول 1 و 2 تغییرات و محدودیت های API را در کلاس Notification.Builder توضیح می دهند.

جدول 1 . تغییرات در روش های عمومی برای Notification.Builder

روش های عمومی اثر توضیحات

addAction()

بدون عملیات مشروط اعلان‌های Notification.MessagingStyle باید اقدامات مشخص‌شده در الزامات سازگاری را اضافه کنند. هر اقدام اضافی که اضافه می شود به عنوان دکمه اعلان نمایش داده نمی شود.

createBigContentView()

createContentView()

createHeadsUpContentView()

setContent()

setCustomBigContentView()

setCustomContentView()

setCustomHeadsUpContentView()

بدون عملیات RemoteViews و نمایش‌های محتوای سفارشی پشتیبانی نمی‌شوند.

setBadgeIconType()

setNumber()

بدون عملیات نشان‌های اعلان پشتیبانی نمی‌شوند.

setChronometerCountDown()

setUsesChronometer()

بدون عملیات تایمرهای شمارش معکوس پشتیبانی نمی شوند.
setColorized() محدودیت ها تغییر کرد

برنامه های پلت فرم امضا شده : قابل تنظیم. به طور پیش فرض مجاز است.

برنامه های دارای امتیاز سیستم : پیکربندی شده توسط پلت فرم. به طور پیش فرض غیرمجاز است.

همه برنامه های دیگر : پیکربندی شده توسط پلت فرم. به طور پیش فرض غیرمجاز است.

setFullScreenIntent() رفتار تغییر کرد هدف را به طور خودکار راه اندازی نمی کند.
setLargeIcon() رفتار تغییر کرد نمادهای بزرگ در سمت راست اعلان نشان داده شده است.
setLights() بدون عملیات دستگاه‌های دارای سیستم عامل Android Automotive چراغ‌های نشانگر LED ندارند.
setOngoing() رفتار تغییر کرد

وقتی اعلان یک اعلان سرآغاز را نیز راه‌اندازی می‌کند، رفتار متفاوت است.

setOngoing() فقط در صورتی اعلان heads-up را غیرقابل قبول می کند که اعلان heads-up برای تماس ورودی باشد. برای واجد شرایط شدن به عنوان یک اعلان head-up غیرقابل رد برای تماس ورودی، یک اعلان باید setPublicVersion() را انجام دهد.

setVisibility()

بدون عملیات حالت خصوصی پشتیبانی نمی شود.
setSettingsText() بدون عملیات اعلان‌ها از هزینه‌هایی که به تنظیمات برنامه پیوند دارند پشتیبانی نمی‌کنند. رانندگان به جای آن از طریق برنامه به تنظیمات برنامه دسترسی دارند.
setTicker() بدون عملیات متن Ticker پشتیبانی نمی شود.

جدول 2 . تغییرات در کلاس‌های تودرتو برای Notification.Builder

کلاس های تو در تو اثر توضیحات

Notification.BigPictureStyle

Notification.BigTextStyle

Notification.InboxStyle

استفاده نشده است فقط متن خلاصه نشان می دهد. اعلان‌های دقیق برای این سبک‌ها پشتیبانی نمی‌شوند.
Notification.BubbleMetadata استفاده نشده است حباب ها پشتیبانی نمی شوند.
Notification.MediaStyle پنهان شده است اعلان‌های این سبک پنهان هستند. سیستم عامل Android Automotive تعاملات رابط کاربری را برای اعلان‌ها و پخش رسانه مدیریت می‌کند.
Notification.MessagingStyle رفتار تغییر کرد

اعلان‌های این سبک دارای تفاوت‌های زیر هستند:

Notification.CarExtender

Notification.WearableExtender

استفاده نشده است توسعه دهنده ها پشتیبانی نمی شوند.

Notification.Action.Builder

جدول 3 تغییرات و محدودیت های API را در کلاس Notification.Action.Builder توضیح می دهد.

جدول 3 . تغییرات در روش های عمومی برای Notification.Action.Builder

روش های عمومی اثر توضیحات
سازندگان عمومی رفتار تغییر کرد نمادهای مشخص شده در سازنده های عمومی نادیده گرفته می شوند.
addRemoteInput رفتار تغییر کرد برای به حداقل رساندن حواس پرتی راننده، یک دستیار دیجیتالی، مانند دستیار گوگل، پاسخ یک پیام را برای کاربر درج می کند. کاربران نمی توانند پیام ها را تایپ کنند.
setAllowGeneratedReplies بدون عملیات Smart Reply پشتیبانی نمی شود.