با استفاده از Desktop Head Unit تست کنید

Desktop Head Unit (DHU) به دستگاه توسعه شما اجازه می‌دهد از یک هد واحد Android Auto شبیه‌سازی کند تا بتوانید برنامه‌های Android Auto را اجرا و آزمایش کنید. DHU روی سیستم‌های Windows، macOS و Linux اجرا می‌شود.

پس از نصب DHU، می‌توانید برنامه‌های Android Auto خود را با اتصال دستگاه تلفن همراه خود به آن با استفاده از یکی از مکانیسم‌های اتصال پشتیبانی‌شده شرح داده شده در اجرای DHU آزمایش کنید.

برای گزارش اشکال یا درخواست ویژگی‌های مربوط به DHU، از ردیاب مشکل استفاده کنید.

DHU را نصب کنید

برای نصب DHU بر روی دستگاه توسعه خود مراحل زیر را دنبال کنید:

  1. حالت برنامه‌نویس را در دستگاه تلفن همراه دارای Android 9 (سطح API 28) یا بالاتر فعال کنید، همانطور که در پیکربندی گزینه‌های برنامه‌نویس روی دستگاه توضیح داده شده است.
  2. برنامه خود را بر روی دستگاه کامپایل و نصب کنید.
  3. Android Auto را روی دستگاه نصب کنید. اگر Android Auto از قبل نصب شده است، مطمئن شوید که از آخرین نسخه استفاده می کنید.
  4. در اندروید استودیو، SDK Manager را باز کنید و به تب ابزار SDK بروید، سپس بسته شبیه ساز Head Unit Desktop Android Auto را دانلود کنید.

مدیر SDK که DHU 2.0 را نشان می دهد

DHU در فهرست راهنمای SDK_LOCATION /extras/google/auto/ نصب شده است.

  1. در سیستم‌های لینوکس یا macOS، دستور زیر را در آن دایرکتوری اجرا کنید تا مطمئن شوید باینری DHU قابل اجرا است:

    chmod +x ./desktop-head-unit
    

مراحل اضافی برای لینوکس

اگر نسخه 2.x DHU را روی سیستم لینوکس اجرا می کنید، باید چند کتابخانه اضافی نصب کنید. باینری DHU به GLIBC نسخه 2.32 یا بالاتر بستگی دارد. با اجرای این دستور می توانید نسخه GLIBC سیستم خود را بررسی کنید:

ldd --version

اگر نسخه پایین‌تر از 2.32 است، GLIBC به 2.32 یا بالاتر به‌روزرسانی کنید، که ممکن است نیاز به ارتقاء سیستم‌عامل به نسخه‌ای سازگار با GLIBC 2.32 یا بالاتر داشته باشد.

همچنین باید کتابخانه های libc++1 و libc++abi1 را نصب کنید. روش نصب بسته به توزیع لینوکس شما متفاوت است. به عنوان مثال، در توزیع های لینوکس مشتق شده از دبیان، می توانید کتابخانه ها را با این دستور نصب کنید:

sudo apt-get install libc++1 libc++abi1

نسخه های پیش از انتشار DHU را نصب کنید

برای دسترسی به نسخه های پیش از انتشار DHU، می توانید از نسخه پیش نمایش Android Studio استفاده کنید یا کانال به روز رسانی نصب Android Studio موجود خود را به کانال بتا تغییر دهید .

DHU را اجرا کنید

پس از نصب DHU، می‌توانید با اتصال دستگاه تلفن همراه و ایستگاه کاری خود از طریق USB، برنامه‌های Android Auto خود را آزمایش کنید. DHU را با اتصال دستگاه تلفن همراه خود به دستگاه توسعه با استفاده از حالت لوازم جانبی (توصیه شده برای DHU 2.x) یا تونل ADB اجرا کنید.

با استفاده از حالت لوازم جانبی متصل شوید

Android Auto از اتصال به DHU نسخه 2.x با پروتکل Android Open Accessory (AOA) با استفاده از دستور زیر پشتیبانی می‌کند:

./desktop-head-unit --usb

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

./desktop-head-unit --usb=[DEVICE_ID]

با استفاده از تونل ADB متصل شوید

این روش مستلزم راه‌اندازی اتصال به سرور Android Auto از طریق پل اشکال‌زدایی Android ( adb ) است. برای راه اندازی تونل و اجرای DHU مراحل زیر را دنبال کنید:

  1. اگر حالت برنامه‌نویس Android Auto قبلاً وجود ندارد، آن را فعال کنید .
  2. اگر سرور یونیت سر از قبل در حال اجرا نیست، منوی سرریز را باز کنید و همانطور که در شکل 1 نشان داده شده است، Start head unit server را انتخاب کنید.

    همانطور که در شکل 2 نشان داده شده است، در دستگاه، یک سرویس پیش زمینه در ناحیه اعلان ظاهر می شود که نشان می دهد سرور در حال اجرا است.

    منوی زمینه با گزینه های توسعه دهنده

    شکل 1. منوی زمینه با گزینه های توسعه دهنده.

    اعلان اینکه سرور واحد اصلی در حال اجرا است

    شکل 2. اطلاعیه که سرور واحد اصلی در حال اجرا است.

  3. در برنامه Android Auto، روی ماشین‌های متصل قبلی در بالای تنظیمات ضربه بزنید و مطمئن شوید که افزودن ماشین‌های جدید به Android Auto فعال است.

  4. دستگاه تلفن همراه را با استفاده از USB به دستگاه توسعه وصل کنید.

  5. مطمئن شوید که صفحه نمایش دستگاه تلفن همراه باز است تا بتواند DHU را راه اندازی کند.

  6. در دستگاه توسعه، دستور adb زیر را اجرا کنید تا اتصالات سوکت از پورت 5277 دستگاه توسعه به همان شماره پورت دستگاه اندرویدی منتقل شود. این پیکربندی به DHU اجازه می‌دهد به سرور واحد در حال اجرا در دستگاه تلفن همراه از طریق یک سوکت TCP متصل شود.

    adb forward tcp:5277 tcp:5277
    
  7. DHU را با اجرای دستور desktop-head-unit.exe در ویندوز، یا ./desktop-head-unit در macOS یا Linux، از دایرکتوری SDK_LOCATION /extras/google/auto/ شروع کنید:

    cd SDK_LOCATION/extras/google/auto
    desktop-head-unit.exe # Windows
    ./desktop-head-unit # macOS or Linux
    

DHU روی یک ماشین توسعه کار می کند

  1. اگر این اولین باری است که دستگاه تلفن همراه را به DHU متصل می‌کنید، صفحه دستگاه تلفن همراه را بررسی کنید تا شرایط خدمات را بپذیرید و تنظیمات مجوز را در صورت نیاز انجام دهید.

پس از شروع DHU، می توانید از دستورات کنسول DHU برای اجرا و آزمایش برنامه خود استفاده کنید.

گزینه های خط فرمان

به طور پیش‌فرض، سرور یونیت سر از طریق پورت 5277 متصل می‌شود. برای لغو میزبان یا پورت، از پرچم --adb=<[localhost:]port> استفاده کنید، همانطور که در مثال زیر نشان داده شده است:

./desktop-head-unit --adb=5999

به طور پیش فرض، DHU یک هد یونیت سازگار با Android Auto را با رابط کاربری صفحه لمسی شبیه سازی می کند. با کلیک روی DHU با ماوس، لمس کاربر را شبیه سازی کنید. برای شبیه سازی واحدهای سر که از یک کنترلر چرخشی برای ورودی استفاده می کنند، می توانید از پرچم -i rotary استفاده کنید، همانطور که در مثال زیر نشان داده شده است:

./desktop-head-unit -i controller

هنگامی که DHU در حالت کنترل کننده چرخشی است، می توانید از میانبرهای صفحه کلید برای شبیه سازی عملیات کنترل کننده استفاده کنید. برای جزئیات بیشتر به بخش کنترلر روتاری مراجعه کنید. در حالت کنترلر چرخشی، DHU کلیک های ماوس را نادیده می گیرد. باید Android Auto را با عملیات کنترل‌کننده چرخشی شبیه‌سازی شده کار کنید.

سایر گزینه های خط فرمان برای DHU در جدول زیر فهرست شده اند:

گزینه توضیحات
-c ، --config= FILE از فایل .ini با پیکربندی مشخص شده استفاده کنید. برای جزئیات بیشتر به بخش پیکربندی DHU مراجعه کنید.
-i ، --input= INPUT از حالت ورودی مشخص شده استفاده کنید، یکی از: touch ، rotary یا hybrid .
-a ، --adb= HOSTPORT از انتقال ADB استفاده کنید. host : port یا port . به طور پیش فرض پورت 5277 است.
-a ، --usb= DEVICE_ID از حمل و نقل USB AOA استفاده کنید. DEVICE_ID اختیاری.
-v ، --version نمایش اطلاعات نسخه
-l ، --licenses نمایش مجوزهای منبع باز
-h ، --headless در حالت بدون سر، بدون رابط کاربری اجرا شود.
-t ، --always_show_window_on_top نمایش پنجره های DHU در بالای پنجره های دیگر (به طور پیش فرض خاموش)
-? ، --help نمایش فهرست راهنما

راهنمای کاربر DHU

این بخش ویژگی های پشتیبانی شده توسط DHU و نحوه استفاده از آنها را توضیح می دهد.

دستورات در پنجره ترمینال جایی که DHU را شروع کرده اید وارد می شوند. دستورات متعددی را می توان در یک خط با جدا کردن آنها با ; .

سیستم

فرمان کلید توضیحات
help [ command ] نمایش مجموعه دستورات کامل اگر نام دستوری مشخص شده است، راهنمای آن دستور را نشان دهید.
quit
exit
Alt+Q یونیت سر را ترک کنید
sleep [ seconds ] یک ثانیه بخواب. اگر تاخیر مشخص شده است، چند seconds بخوابید. این را می توان برای اسکریپت کردن واحد اصلی با ./desktop-head-unit < script.txt در، به عنوان مثال، یک محیط CI استفاده کرد.
screenshot filename.png یک اسکرین شات را در filename.png .
licenses نمایش مجوزهای کتابخانه های مورد استفاده در DHU.
keycode keycode ارسال keycode ، یکی از نام های ذکر شده در بخش Keycodes .

صفحه لمسی و لمسی

هنگامی که صفحه لمسی یا صفحه لمسی فعال است، کلیک کردن در پنجره نمایشگر، برای لمس یا صفحه لمسی، برای صفحه لمسی، به عنوان یک رویداد لمسی ثبت می شود.

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

برای صفحه لمسی، روی دکمه سمت چپ کلیک کنید و نگه دارید تا بین عناصر مختلف UI روی صفحه حرکت کنید. با کلیک بر روی دکمه سمت راست عنصری که فوکوس دارد انتخاب می شود.

فرمان کلید توضیحات
tap xy یک رویداد لمسی را در مختصات مشخص شده شبیه سازی کنید.

کنترلر چرخشی

DHU دارای پشتیبانی از کنترلر چرخشی است. وقتی فعال باشد، اقدامات زیر پشتیبانی می شود:

  • روی D-pad روی بالا، پایین، چپ و راست کلیک کنید
  • چرخش در جهت عقربه های ساعت و خلاف جهت عقربه های ساعت
  • انجام یک حرکت چرخشی (پنج مرحله همزمان)
  • با کلیک کردن روی کنترلر پایین و برگشت

دستورات و اتصالات کلید در جدول زیر آمده است.

چرخ اسکرول روی ماوس دستورات dpad rotate را ارسال می کند و کلیک دکمه وسط ماوس، معمولاً چرخ اسکرول، دستورات dpad click ارسال می کند.

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

فرمان کلید توضیحات
dpad {up|down|left|right} کلیدهای جهت دار کنترل کننده چرخشی را حرکت دهید.
dpad {ur|dl|ul|dr} کنترل کننده چرخشی را حرکت دهید.
dpad soft {left|right} کلیدهای Shift+Arrow دکمه های کناری موجود در برخی از کنترلرهای چرخشی را فشار دهید.
dpad click بازگشت کنترل کننده چرخشی را فشار دهید.
dpad back بک اسپیس دکمه برگشت موجود در زیر برخی از کنترلرهای چرخشی را فشار دهید.
dpad rotate left 1 کنترل کننده چرخشی را در خلاف جهت عقربه های ساعت بچرخانید (سمت چپ).
dpad rotate right 2 کنترل کننده چرخشی را در جهت عقربه های ساعت بچرخانید (راست).
dpad flick left Shift+1 کنترلر چرخشی را در خلاف جهت عقربه های ساعت به سرعت بچرخانید.
dpad flick right Shift+2 کنترل کننده چرخشی را به سرعت در جهت عقربه های ساعت بچرخانید.
dpad 0-9*#+ عدد پد

میکروفون

DHU از استفاده از میکروفون برای ورودی صوتی یا پخش آهنگ صوتی از پیش ضبط شده پشتیبانی می کند. برای راحتی، فایل‌های صوتی زیر برای دستورات صوتی رایج همراه با DHU گنجانده شده است. این فایل های صوتی در دایرکتوری SDK_LOCATION /extras/google/auto/voice/ قرار دارند.

نام فایل متن
navhome.wav به خانه بروید.
navwork.wav به محل کار بروید.
navsoh.wav به خانه اپرای سیدنی بروید.
navgoogle.wav به 1600 Amphitheatre Parkway، کالیفرنیا، ایالات متحده آمریکا بروید.
exitnav.wav خروج از ناوبری.
howlong.wav تا کی برسم؟
showtraffic.wav نمایش ترافیک
showalternateroute.wav نمایش مسیرهای جایگزین
pause.wav مکث موسیقی
nextturn.wav نوبت بعدی من کی است؟

برای اجرای یک فایل .wav در اعلان DHU، از دستور زیر استفاده کنید:

mic play /path/to/filename.wav

جدول زیر سایر دستورات مربوط به میکروفون را فهرست می کند:

فرمان کلید توضیحات
mic begin م میکروفون را با شبیه سازی یک کلیک روی دکمه فرمان فعال کنید و منتظر ورودی میکروفون کامپیوتر باشید.
mic play filename.wav میکروفون را فعال کنید و فایل ضبط شده WAV مشخص شده را پخش کنید. توجه: فایل WAV در حال پخش را نمی شنوید، اما پاسخ آن را از Android Auto می شنوید.
mic repeat آخرین ضبط استفاده شده با mic play را تکرار کنید.
mic reject {on|off} رد درخواست های میکروفون را فعال یا غیرفعال کنید. وقتی روشن است، همه درخواست‌های میکروفون رد می‌شوند.

حسگرها

DHU از شبیه سازی تغییرات در داده های حسگر خودرو با دستورات زیر پشتیبانی می کند. برای مسخره کردن داده‌های حسگر و ارسال آن به Android Auto، هنگام راه‌اندازی DHU، حسگرهای مربوطه باید با پیکربندی فایل استفاده شده .ini فعال شوند.

فرمان توضیحات
fuel [ percentage ] سطح سوخت را روی درصد مشخص شده تنظیم کنید یا (بدون هیچ مقداری) سطح سوخت را غیرفعال کنید.
range [ km ] برد را روی کیلومتر مشخص شده تنظیم کنید یا (بدون مقدار ارسال شده) داده های برد را غیرفعال کنید.
lowfuel [{on|off}] سنسور هشدار سوخت کم را تنظیم کنید یا (بدون هیچ مقداری) سنسور را غیرفعال کنید.
accel [ x ] [ y ] [ z ] شتاب سنج را روی مقادیر مشخص شده x، y و z تنظیم کنید (m/s^2) یا (بدون هیچ پارامتری) داده های شتاب سنج را تنظیم نکنید. برای رد شدن از پارامترهای اختیاری در صورت نیاز از NAN عبور کنید.
compass bearing [ pitch ] [ roll ] قطب نما را روی مقادیر مشخص شده یاتاقان، گام و رول (درجه) تنظیم کنید. برای رد شدن از پارامترهای اختیاری در صورت نیاز از NAN عبور کنید.
gyro [ x ] [ y ] [ z ] ژیروسکوپ را روی سرعت چرخش x، y و z مشخص شده (rad/s) تنظیم کنید یا (بدون هیچ پارامتری) داده های ژیروسکوپ را تنظیم نکنید. برای رد شدن از پارامترهای اختیاری در صورت نیاز از NAN عبور کنید.
location lat long [ accuracy ] [ altitude ] [ speed ] [ bearing ] مکان را روی مقادیر lat و long مشخص شده به همراه دقت اختیاری (m)، ارتفاع (m)، سرعت (m/s) و یاتاقان (درجه) تنظیم کنید. برای رد شدن از پارامترهای اختیاری در صورت نیاز از NAN عبور کنید.
odometer km [ current_trip_km ] کیلومتر شمار را به همراه یک مقدار کیلومتر سفر فعلی اختیاری روی کیلومترهای مشخص شده تنظیم کنید.
speed [ speed ] سرعت خودرو را روی مقدار مشخص شده (m/s) تنظیم کنید یا (بدون هیچ مقداری) سنسور را غیرفعال کنید.
tollcard {insert|remove} کارت عوارض را درج یا حذف کنید.
gps_satellite number_in_use [[ azimuth ] [ elevation ] [ prn ] [ snr ] [ used_in_fix ]] سنسور ماهواره GPS را روی عدد مشخص شده در مقدار مصرف به همراه لیست اختیاری آزیموت (درجه در محدوده 0 تا 360)، ارتفاع (درجه در محدوده 0 تا 90)، prn (صدای شبه تصادفی)، snr (dB) و در رفع ( true یا false ) استفاده می شود.
parking_brake engaged سنسور ترمز دستی را روی true یا false قرار دهید.
gear gear_value سنسور دنده را روی مقدار مشخص شده تنظیم کنید (به عنوان مثال 0 برای خنثی، 100 برای درایو، 101 برای پارک و 102 برای معکوس).

حالت های روز و شب

DHU از شبیه سازی تغییر بین حالت روز و شب با دستورات و اتصالات کلید زیر پشتیبانی می کند:

فرمان کلید توضیحات
day Shift+N حالت روز را فعال کنید - روشنایی بالا، تمام رنگ.
night Ctrl+N حالت شب را فعال کنید - روشنایی کم، کنتراست بالا.
daynight
nightday
ن حالت روز یا شب را تغییر دهید.

مدیریت تمرکز

DHU از شبیه سازی اینکه آیا Android Auto روی واحد اصلی با استفاده از دستورات زیر فوکوس دارد یا خیر پشتیبانی می کند:

فرمان توضیحات
focus video {on|off|toggle} فعال یا غیرفعال کردن فوکوس ویدیویی روی واحد اصلی. با خاموش کردن فوکوس ویدیو، یونیت سر به حالت اصلی شبیه‌سازی می‌شود.
focus audio {on|off|toggle} فوکوس صوتی را روی واحد اصلی فعال یا غیرفعال کنید. با خاموش کردن فوکوس صوتی، واحد اصلی در حال پخش منبع صوتی خود شبیه سازی می شود.
focus nav {on|off|toggle} فوکوس ناوبری را روی واحد اصلی فعال یا غیرفعال کنید. خاموش کردن فوکوس ناوبری واحد مرکزی را شبیه سازی می کند که سیستم ناوبری خود را اجرا می کند.

محدودیت ها و وضعیت رانندگی

DHU از شبیه‌سازی محدودیت‌های خاص هنگام حرکت وسیله نقلیه، مانند غیرفعال کردن صفحه کلید و غیرفعال کردن تنظیمات تلفن، با استفاده از دستورات زیر پشتیبانی می‌کند:

فرمان کلید توضیحات
restrict none U تمام محدودیت ها را غیرفعال کنید.
restrict all Shift+U تمام محدودیت ها مانند شبیه سازی رانندگی را فعال کنید.

خوشه ابزار

DHU از شبیه سازی یک خوشه ابزار پشتیبانی می کند. این خوشه معمولاً پشت فرمان است و اطلاعات اولیه را در حین پیمایش در مورد پیچ ​​بعدی - مانند نام جاده بعدی یا فلش پیچ - مسافت یا زمان نشان می دهد. همچنین اطلاعات تماس های تلفنی جاری را نمایش می دهد.

پنجره خوشه ابزار DHU که اطلاعات ناوبری و وضعیت تماس را نشان می دهد

این را ��ی ��وان با استفاده از مدخل instrumentcluster در بخش [general] فایل پیکربندی، یا با ورودی های navcluster یا phonecluster برای کنترل هر ویژگی به طور جداگانه فعال کرد.

[general]
...
instrumentcluster = true

نمایش خوشه ای

برخی از خودروها دارای نمایشگرهای خوشه ای هستند که قادر به نمایش اطلاعات بصری غنی مانند کاشی های نقشه هستند. با شروع نسخه 2.1 DHU (در حال حاضر با استفاده از کانال بروزرسانی اندروید استودیو بتا در دسترس است)، می توانید چنین نمایشگری را در دستگاه توسعه خود شبیه سازی کنید.

این را می توان با استفاده از یک فایل پیکربندی با بخش [display] کلاستر انجام داد. بخش‌های [display] از همان گزینه‌های پیکربندی ویدیویی پشتیبانی می‌کنند که نمایشگر اصلی پیکربندی شده در بخش [general] فایل.

شکل 3. صفحه اصلی هنگام اجرای DHU با نمایشگر خوشه ثانویه.
شکل 4. صفحه نمایش خوشه هنگام اجرای DHU با نمایشگر خوشه ثانویه.
...

# The display name following the colon can be whatever you like.
[display:cluster]
# Setting the displaytype as cluster is what lets the DHU know how to handle it.
displaytype = cluster
resolution = 800x480
dpi = 160
...

این پیکربندی می‌تواند مستقیماً به یک فایل .ini موجود اضافه شود یا می‌توانید با قرار دادن آن در یک فایل جداگانه و ارسال چندین فایل پیکربندی هنگام راه‌اندازی DHU از آن دوباره استفاده کنید. هنگام استفاده از چندین فایل پیکربندی، تعاریف بعدی یک مقدار معین، تعاریف قبلی را لغو می کند.

# Launch your landscape configuration with your cluster display configuration
./desktop-head-unit -c landscape.ini -c cluster.ini

# Launch the portait configuration with the same cluster display configuration
./desktop-head-unit -c portrait.ini -c cluster.ini

وضعیت پخش رسانه

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

پنجره وضعیت پخش رسانه DHU که اطلاعات پخش را نشان می دهد

این را می توان با استفاده از ورودی playbackstatus در بخش [general] فعال کرد.

[general]
...
playbackstatus = true

کدهای کلیدی

DHU مجموعه ای از کدهای کلید پیش فرض را ارائه می دهد که مجموعه دکمه های میانبر را که معمولاً در وسایل نقلیه موجود است، شبیه سازی می کند. به عنوان مثال، کد کلید home را می توان در اعلان DHU به صورت زیر فعال کرد:

keycode home

جدول زیر سایر کدهای کلید موجود را فهرست می کند:

کد کلید توضیحات
home به صفحه اصلی بروید.
back به عقب برگرد.
call
endcall
برقراری تماس یا پایان دادن به آن
search جستجو را آغاز کنید.
media_play_pause
media_play
media_pause
پخش یا توقف رسانه
media_next
media_previous
به آهنگ رسانه بعدی یا قبلی بروید.
media به برنامه پیش فرض رسانه بروید.
navigation به برنامه ناوبری پیش فرض بروید.
tel به برنامه پیش فرض تلفن بروید.

DHU را پیکربندی کنید

DHU از یک فایل .ini با پیکربندی پشتیبانی می کند تا حالت های ورودی بین کنترلر لمسی و چرخشی را تغییر دهد و نرخ فریم، وضوح و DPI را که واحد اصلی از تلفن درخواست می کند، تنظیم کند.

مکان پیش فرض فایل پیکربندی ~/.android/headunit.ini است. برای تغییر پیکربندی هد یونیت در سیستم خود، می توانید این فایل را تغییر دهید.

همچنین می توانید یک فایل پیکربندی را برای بارگیری با استفاده از پرچم -c تعیین کنید:

./desktop-head-unit -c /path/to/config.ini

قطعه زیر یک پیکربندی نمونه را نشان می دهد:

[general]
touch = true
touchpad = false
controller = false
instrumentcluster = false
resolution = 800x480
dpi = 160
framerate = 30
fueltypes = unleaded,electric,hydrogen
evconnectors = supercharger

فایل‌های پیکربندی نمونه‌ای که تنظیمات مختلف واحد سر را نشان می‌دهند که می‌توانید با آنها آزمایش کنید، در پوشه SDK_LOCATION /extras/google/auto/config/ قرار دارند. برای موارد استفاده پیشرفته تر، لطفاً به تنظیمات پشتیبانی شده زیر مراجعه کنید.

پیکربندی ورودی

جدول زیر گزینه های پیکربندی ورودی را فهرست می کند:

نام پیش فرض تایپ کنید توضیحات
inputmode default رشته حالت ورودی را تعریف کنید. گزینه های touch ، rotary و hybrid ، صفحه لمسی و پشتیبانی چرخشی را فعال و غیرفعال می کنند و کدهای کلید پیش فرض را در صورت لزوم تنظیم می کنند. default به گزینه های touch و controller موکول می شود.
controller false بولی ورودی کنترلر چرخشی را فعال کنید. نادیده گرفته می شود مگر اینکه inputmode default باشد.
touch true بولی صفحه لمسی را فعال کنید نادیده گرفته می شود مگر اینکه inputmode default باشد.
touchpad false بولی پد لمسی را فعال کنید.
touchpadnavigation false بولی صفحه لمسی را فعال کنید تا برای پیمایش رابط کاربری استفاده شود.
touchpadtapasselect false بولی وقتی درست است، ضربه زدن روی صفحه لمسی یک رویداد انتخابی است.
touchpaduiabsolute false بولی وقتی touchpadnavigation true است، تنظیم کنید که آیا لمس‌ها باید به‌عنوان مطلق یا اشاره‌ای در نظر گرفته شوند.

پیکربندی ویدیو

Android Auto از سه وضوح تصویر پشتیبانی می کند:

  • 480p (800x480، پیش‌فرض)
  • 720p (1280x720)
  • 1080p (1920x1080)

برای پشتیبانی از سایر نسبت‌ها، واحد سر می‌تواند در صورت لزوم یک حاشیه به صندوق نامه (پیلارباکس) را مشخص کند. به عنوان مثال، اگر می خواهید یک صفحه نمایش 1000x600 داشته باشید، رزولوشن را روی 720p (1280x720) و marginwidth 280 و marginheight 120 تنظیم کنید. این باعث می شود که یک حاشیه 140 پیکسل در لبه های چپ و راست و حاشیه 60 پیکسل اضافه شود. بالا و پایین

پیکربندی مثال زیر یک صفحه نمایش معمولی 6 اینچی (750x450) را شبیه سازی می کند:

[general]
...
resolution = 800x480
marginwidth = 50
marginheight = 30

و پیکربندی مثال زیر یک صفحه بسیار عریض را شبیه سازی می کند:

[general]
...
resolution = 1280x720
marginwidth = 0
marginheight = 220

جدول زیر سایر گزینه های پیکربندی ویدیو را فهرست می کند:

نام پیش فرض تایپ کنید توضیحات
resolution 800x480 رشته یکی از: 800x480 ، 1280x720 ، 1920x1080 .
dpi 160 عدد صحیح
normalizedpi false بولی وقتی true ، اندازه پنجره DHU را کاهش دهید تا مقادیر DPI بزرگتر را در نظر بگیرید. هنگامی که false ، مقادیر DPI بزرگتر منجر به پنجره های بزرگتر می شود که نمایشگرهای واقعی را تقلید نمی کند اما به بررسی محتوای بصری ک��ک می کند.
realdpi 160 عدد صحیح در پیکربندی ویدیو استفاده می شود.
framerate 30 عدد صحیح در پیکربندی ویدیو استفاده می شود.
marginheight 0 عدد صحیح در پیکربندی ویدئو استفاده می شود.
marginwidth 0 عدد صحیح در پیکربندی ویدیو استفاده می شود.
margins 0,0,0,0 رشته در پیکربندی ویدیو استفاده می شود. در صورت وجود، marginwidth و marginheight را لغو می کند. قالب بالا، پایین، چپ، راست است.
contentinsets 0,0,0,0 رشته در پیکربندی ویدیو استفاده می شود. قالب بالا، پایین، چپ، راست است.
stablecontentinsets 0,0,0,0 رشته در پیکربندی ویدئو استفاده می شود. مقدار contentinsets را پیش‌فرض قرار می‌دهد. فرمت بالا، پایین، چپ، راست است.
cropmargins false بولی اگر margins ، marginheight یا marginwidth مشخص شده باشد، یک مقدار true برای این تنظیم، آن حاشیه ها را از ویدیوی نمایش داده شده حذف می کند. این به طور دقیق تری منعکس کننده چیزی است که کاربر نهایی می بیند.
pixelaspectratio 1.0 شناور در پیکربندی ویدئو استفاده می شود.

پیکربندی سنسور

برای تمسخر داده‌های حسگر و ارسال آن به Android Auto، حسگرهای مربوطه باید با استفاده از گزینه‌های زیر فعال شوند. اگر سنسوری فعال نباشد، هر داده ای که برای آن سنسور با استفاده از دستورات DHU ارسال می شود نادیده گرفته می شود. این پیکربندی باید در بخش [sensors] قرار گیرد، نه در بخش [general] که برای اکثر پیکربندی‌های دیگر استفاده می‌شود.

[general]
touch = true
...

[sensors]
location = true
fuel = true
...
نام پیش فرض تایپ کنید توضیحات
accelerometer false بولی داده های حسگر شتاب سنج را فعال کنید.
compass false بولی داده های حسگر قطب نما را فعال کنید.
driving_status false بولی داده های حسگر وضعیت رانندگی را فعال کنید.
fuel false بولی داده های سنسور سوخت را فعال کنید.
gyroscope false بولی داده های سنسور ژیروسکوپ را فعال کنید.
location false بولی داده های حسگر مکان خودرو را فعال کنید.
night_mode false بولی داده های حسگر حالت شب را فعال کنید.
odometer false بولی داده های سنسور کیلومتر شمار را فعال کنید.
speed false بولی داده های سنسور سرعت را فعال کنید.
toll_card false بولی داده های حسگر کارت عوارض را فعال کنید.
gps_satellite false بولی داده های سنسور ماهواره GPS را فعال کنید.
parking_brake false بولی اطلاعات سنسور ترمز دستی را فعال کنید.
gear false بولی داده های سنسور چرخ دنده را فعال کنید.

گزینه های پیکربندی متفرقه

جدول زیر سایر گزینه های پیکربندی را فهرست می کند:

نام پیش فرض تایپ کنید توضیحات
instrumentcluster false بولی خوشه ابزار را فعال کنید. پنجره ای را برای نمایش وضعیت ناوبری و تلفن به رابط کاربری اضافه می کند.
navcluster false بولی خوشه ابزار را فعال کنید. پنجره ای را برای نمایش وضعیت ناوبری به رابط کاربری اضافه می کند.
phonecluster false بولی خوشه ابزار را فعال کنید. پنجره ای به رابط کاربری اضافه می کند تا وضعیت گوشی را نمایش دهد.
playbackstatus false بولی وضعیت پخش را فعال کنید پنجره ای به رابط کاربری اضافه می کند تا پیام های وضعیت پخش نمایش داده شود.
driverposition left رشته یکی از: left ، center یا right .
windowleft عدد صحیح موقعیت سمت چپ پنجره اصلی را تنظیم کنید.
windowtop عدد صحیح موقعیت بالای پنجره اصلی را تنظیم کنید.
fueltypes unleaded رشته ها یک یا چند مورد از موارد زیر در یک لیست جدا شده با کاما:
  • unleaded
  • leaded
  • diesel-1
  • diesel-2
  • biodiesel
  • e85
  • lpg
  • cng
  • lng
  • hydrogen
  • electric
  • other
  • unknown
evconnectors رشته ها صفر یا بیشتر از موارد زیر، در یک لیست جدا شده با کاما:
  • j1772
  • mennekes
  • chademo
  • combo-1
  • combo-2
  • roadster
  • hpwc
  • gbt
  • supercharger
  • other
  • unknown
فقط در صورتی تنظیم کنید که fueltypes دارای electric باشد.

عیب یابی

گاهی اوقات DHU هنگامی که برای اولین بار متصل می شود یک صفحه نمایش خالی نشان می دهد. با انجام موارد زیر می توانید این کار را حل کنید:

  1. DHU را ببندید.
  2. برای توقف و راه اندازی مجدد سرور واحد مرکزی، مرحله 5 را که در Run the DHU توضیح داده شده است، دنبال کنید.
  3. DHU را دوباره شروع کنید.
  4. هر گونه مجوز اضافی درخواست شده در صفحه تلفن را اعطا کنید. DHU ممکن است یک بار دیگر خاموش شود.
  5. در صورت لزوم DHU را مجددا راه اندازی کنید.