الاختبار باستخدام الوحدة الرئيسية لسطح المكتب

تتيح الوحدة الرئيسية لسطح المكتب (DHU) لجهاز التطوير محاكاة الوحدة الرئيسية في Android Auto حتى تتمكّن من تشغيل تطبيقات Android Auto واختبارها. ويعمل وحدة DHU على أنظمة التشغيل Windows وmacOS وLinux.

بعد تثبيت DHU، يمكنك اختبار تطبيقات Android Auto من خلال توصيل جهازك الجوّال بها باستخدام إحدى آليات الاتصال المتوافقة الموضّحة في تشغيل DHU.

للإبلاغ عن الأخطاء أو طلب ميزات ذات صلة بـ DHU، استخدِم أداة تتبُّع المشاكل.

تثبيت DHU

اتّبِع الخطوات التالية لتثبيت DHU على جهاز التطوير الذي تستخدمه:

  1. فعِّل وضع مطوّر البرامج على جهاز جوّال يعمل بنظام التشغيل Android 6.0 (المستوى 23 لواجهة برمجة التطبيقات) أو إصدار أحدث، كما هو موضَّح في إعداد خيارات المطوّرين على الجهاز.
  2. جمِّع تطبيقك وثبِّته على الجهاز.
  3. ثبِّت Android Auto على الجهاز. إذا كان تطبيق Android Auto مثبتًا مسبقًا، تأكّد من استخدام أحدث إصدار منه.
  4. في Android Studio، افتح مدير حزمة تطوير البرامج (SDK) وانتقِل إلى علامة تبويب أدوات حزمة تطوير البرامج (SDK)، ثم نزِّل حزمة محاكي الوحدة النمطية لأجهزة الكمبيوتر المكتبي Android Auto.

أداة تطوير البرامج (SDK) تعرض الإصدار 2.0 من DHU

يتم تثبيت DHU في الدليل SDK_LOCATION/extras/google/auto/.

  1. على أنظمة التشغيل Linux أو macOS، شغِّل الأمر التالي في هذا الدليل للتأكد من أنّ برنامج DHU الثنائي قابل للتنفيذ:

    chmod +x ./desktop-head-unit
    

خطوات إضافية لنظام التشغيل Linux

إذا كنت تشغّل الإصدار 2.x من DHU على نظام Linux، عليك تثبيت بعض المكتبات الإضافية. يعتمد برنامج DHU الثنائي على الإصدار 2.32 من GLIBC أو الإصدارات الأحدث. يمكنك التحقّق من إصدار GLIBC من نظامك من خلال تنفيذ الأمر التالي:

ldd --version

إذا كان الإصدار أقدم من 2.32، عليك تحديث GLIBC إلى الإصدار 2.32 أو الإصدارات الأحدث، ما قد يتطلّب منك ترقية نظام التشغيل إلى إصدار متوافق مع الإصدار 2.32 من GLIBC أو الإصدارات الأحدث.

يجب أيضًا تثبيت مكتبتَي libc++1 وlibc++abi1. تختلف عملية التثبيت تبعًا لتوزيع Linux على جهازك. على سبيل المثال، على توزيعات Linux المشتقّة من Debian، يمكنك تثبيت المكتبات باستخدام هذا الأمر:

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

تثبيت إصدارات تجريبية من DHU

للوصول إلى الإصدارات التجريبية من DHU، يمكنك إمّا استخدام إصدار معاينة من "استوديو Android" أو تغيير قناة التحديث المرتبطة حاليًا بتثبيت "استوديو Android" إلى القناة التجريبية.

تشغيل DHU

بعد تثبيت DHU، يمكنك اختبار تطبيقات Android Auto من خلال توصيل جهازك الجوّال ومحطة العمل عبر USB. شغِّل DHU من خلال توصيل جهازك الجوّال بجهاز تطوير باستخدام وضع الملحق (يُنصَح به مع DHU 2.x) أو نفق ADB.

الاتصال باستخدام "وضع الملحقات"

يتيح Android Auto الاتصال بالإصدار 2.x من DHU باستخدام بروتوكول Android Open Accessory (AOA) باستخدام الأمر التالي:

./desktop-head-unit --usb

تفحص وحدة DHU تلقائيًا قائمة أجهزة USB المتاحة وتحاول الاتصال بأول جهاز متوافق متوافق. ولاستهداف جهاز معيّن، عليك تضمين رقم تعريف الجهاز كجزء من الأمر --usb على النحو التالي:

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

الاتصال باستخدام نفق ADB

تتطلّب هذه الطريقة إعداد اتصال بخادم الوحدة الرئيسية في Android Auto من خلال Android Debug Bridge (adb). اتّبِع هذه الخطوات لإعداد الاتصال النفقي وتشغيل DHU:

  1. فعِّل وضع مطوّر البرامج في Android Auto إذا لم يكن كذلك.
  2. إذا لم يكن خادم الوحدة الرئيسية قيد التشغيل حاليًا، افتح القائمة الكاملة واختَر بدء خادم الوحدة الرئيسية، كما هو موضّح في الشكل 1.

    على الجهاز، تظهر خدمة تعمل في المقدّمة في منطقة الإشعارات تشير إلى أنّ الخادم قيد التشغيل، كما هو موضّح في الشكل 2.

    قائمة السياق مع خيارات المطوّرين

    الشكل 1. قائمة السياق مع خيارات المطوّرين.

    إشعار بأنّ خادم الوحدة الرئيسية قيد التشغيل

    الشكل 2. إشعار بأنّ خادم الوحدة الرئيسية قيد التشغيل

  3. في تطبيق Android Auto، انقر على السيارات المتصلة سابقًا بالقرب من أعلى الإعدادات وتأكَّد من تفعيل إضافة سيارات جديدة إلى Android Auto.

  4. وصِّل الجهاز الجوّال بجهاز التطوير باستخدام USB.

  5. تأكد من فتح قفل شاشته على الجهاز المحمول حتى يتمكن من تشغيل DHU.

  6. على جهاز التطوير، شغِّل الأمر adb التالي لإعادة توجيه اتصالات المقبس من منفذ جهاز التطوير 5277 إلى رقم المنفذ نفسه على جهاز Android. تتيح هذه التهيئة اتصال DHU بخادم الوحدة الرئيسية الذي يعمل على الجهاز الجوّال عبر مقبس بروتوكول التحكم بالنقل.

    adb forward tcp:5277 tcp:5277
    
  7. ابدأ تشغيل DHU عن طريق تشغيل الأمر desktop-head-unit.exe على نظام التشغيل Windows أو ./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 في الجدول التالي:

Option الوصف
-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، وهو أحد الأسماء المدرَجة في القسم رموز المفاتيح.

اللمس ولوحة اللمس

عند تفعيل "اللمس" أو "لوحة اللمس"، يتم تسجيل النقر في نافذة العرض أو نافذة اللمس أو نافذة لوحة اللمس على لوحة اللمس كحدث لمس.

بالنسبة للّمس، يمكنك محاكاة اللمس المتعدد من خلال النقر بزر الماوس الأيمن على موضع الإصبع الأول، ثم النقر مع الاستمرار على الزر الأيمن في الإصبع الثاني. تبقى نقطة المنتصف للإصبعين ثابتة؛ إذ يسمح لك تحريك الماوس بتدويرهما حول الوسط، أو الضغط بإصبعين للداخل والخارج، أو كليهما.

في لوحة اللمس، انقر مع الاستمرار على الزر الأيسر للتنقل بين العناصر المختلفة في واجهة المستخدم على الشاشة. يؤدي النقر فوق الزر الأيمن إلى تحديد العنصر الذي يحتوي على تركيز.

الأمر المفتاح الوصف
tap x y يمكنك محاكاة حدث لمس عند الإحداثيات المحددة.

وحدة تحكّم دوّارة

وتدعم وحدة التحكم الدوّارة في وحدة DHU. وعند تفعيله، تتمّ إتاحة الإجراءات التالية:

  • النقر للأعلى وللأسفل ولليسار ولليمين على لوحة التحكم
  • تدوير في اتجاه عقارب الساعة وعكس اتجاه عقارب الساعة
  • تنفيذ حركة الدوران (خمس خطوات في المرة الواحدة)
  • من خلال النقر على وحدة التحكّم للأسفل ثم الرجوع إليها

يتم سرد الأوامر وارتباطات المفاتيح في الجدول التالي.

ترسِل عجلة التمرير الموجودة على الماوس أوامر dpad rotate، ويرسل النقر على زر الماوس الأوسط (عادةً عجلة التمرير) أوامر dpad click.

تجدر الإشارة إلى أنّ معظم السيارات تحتوي على شاشات تعمل باللمس. تحتوي بعض السيارات على وحدات تحكم دورانية فقط، والبعض الآخر يحتوي على لمسة هجينة ووحدة تحكم. يمكن للسيارات أيضًا أن تدعم لوحة اللمس، التي يمكن استخدامها لتحريك الخريطة وإدخال النص. لذا ضع في اعتبارك هذه التهيئات المختلفة عند محاكاة الوحدات الرئيسية المختلفة للمركبة.

الأمر المفتاح الوصف
dpad {up|down|left|right} مفاتيح الأسهم حرِّك وحدة التحكّم في وضع الدوران.
dpad {ur|dl|ul|dr} حرِّك وحدة التحكّم في وضع الدوران.
dpad soft {left|right} Shift+مفاتيح الأسهم عليك الضغط على الأزرار الجانبية المتوفّرة في بعض وحدات التحكُّم الدوّارة.
dpad click إرجاع اضغط على وحدة التحكّم بدورة دورانية.
dpad back مفتاح Backspace اضغط على زر الرجوع المتاح أسفل بعض وحدات التحكُّم الدوّارة.
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، يجب تفعيل أدوات الاستشعار المقابلة في ملف الضبط .ini المستخدَم عند بدء تشغيل وحدة DHU.

الأمر الوصف
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] اضبط الموقع على قيم خطوط الطول والعرض المحددة مع الدقة الاختيارية (m) والارتفاع (m) والسرعة (م/ث) والاتجاه (بالدرجات). مرِّر NAN لتخطي المَعلمات الاختيارية إذا لزم الأمر.
odometer km [current_trip_km] يمكنك تعيين عدّاد المسافة على الكيلومترات المحددة بالإضافة إلى قيمة اختيارية للكيلومترات الحالية للرحلة.
speed [speed] اضبط سرعة المركبة على القيمة المحدّدة (م/ث) أو أوقِف جهاز الاستشعار (بدون ضبط أي قيمة).
tollcard {insert|remove} أدخِل بطاقة برسوم عبور أو أزِلها.
gps_satellite number_in_use [[azimuth] [elevation] [prn] [snr] [used_in_fix]] اضبط أداة استشعار القمر الصناعي لنظام تحديد المواقع العالمي (GPS) على الرقم المحدد قيد الاستخدام بالإضافة إلى القائمة الاختيارية للسمت (درجة ضمن النطاق من 0 إلى 360) والارتفاع (درجة ضمن النطاق من 0 إلى 90) والارتفاع (pRN) (الضوضاء الزائفة) وsnr (ديسيبل) والاستخدام في التثبيت (true أو false).
parking_brake engaged عليك ضبط مستشعر فرامل اليد على true أو false.
gear gear_value اضبط أداة استشعار التروس على القيمة المحددة (على سبيل المثال، 0 للوضع المحايد، و100 للقيادة، و101 للإيقاف، و102 للعكس).

الوضع النهاري والليلي

يدعم جهاز DHU محاكاة التبديل بين الوضع الليلي والنهاري باستخدام الأوامر التالية وروابط المفاتيح:

الأمر المفتاح الوصف
day Shift+N تفعيل وضع اليوم - سطوع عالٍ، ألوان كاملة.
night Ctrl+N تفعيل الوضع الليلي: الإضاءة المنخفضة والتباين العالي
daynight
nightday
N تفعيل الوضع النهاري أو الليلي

إدارة التركيز

تتيح وحدة DHU محاكاة ما إذا كان Android Auto يركّز على الوحدة الرئيسية باستخدام الأوامر التالية:

الأمر الوصف
focus video {on|off|toggle} تفعيل تركيز الفيديو أو إيقافه في الوحدة الرئيسية ويؤدي إيقاف تركيز الفيديو إلى محاكاة انتقال الوحدة الرئيسية إلى الوضع الأصلي.
focus audio {on|off|toggle} تفعيل تركيز الصوت أو إيقافه في الوحدة الرئيسية ويحاكي إيقاف تركيز الصوت الوحدة الرئيسية التي تشغِّل مصدر الصوت الخاص بها.
focus nav {on|off|toggle} تفعيل تركيز التنقل أو إيقافه في الوحدة الرئيسية ويؤدي إيقاف تركيز التنقل إلى محاكاة الوحدة الرئيسية التي تشغّل نظام التنقل الخاص بها.

القيود وحالة القيادة

تتيح وحدة DHU محاكاة قيود معيّنة أثناء تحرك المركبة، مثل إيقاف لوحة المفاتيح وعدم السماح بإعدادات الهاتف، باستخدام الأوامر التالية:

الأمر المفتاح الوصف
restrict none إيقاف جميع القيود
restrict all Shift+U تفعيل جميع القيود، مثل محاكاة القيادة

مجموعة العدادات

وتدعم DHU محاكاة مجموعة العدادات. تكون هذه المجموعة عادةً خلف عجلة القيادة، وتعرض معلومات أساسية أثناء التنقّل حول المنعطف التالي، مثل اسم الطريق التالي أو سهم الانعطاف، أو المسافة أو الوقت. وتعرض أيضًا معلومات عن المكالمات الهاتفية الجارية.

نافذة مجموعة أدوات DHU تعرض معلومات التنقل وحالة الاتصال على حد سواء

يمكن تفعيل هذا الإعداد باستخدام إدخال instrumentcluster في قسم [general] من ملف الإعداد، أو من خلال إدخال navcluster أو phonecluster للتحكّم في كل ميزة على حدة.

[general]
...
instrumentcluster = true

عرض المجموعة

تحتوي بعض المركبات على شاشات عنقودية قادرة على عرض معلومات مرئية ثرية، مثل مربّعات الخرائط. بدءًا من الإصدار 2.1 من DHU (المتوفّر حاليًا باستخدام قناة تحديث "استوديو Android" التجريبية )، يمكنك محاكاة هذه الشاشة على جهاز التطوير الذي تستخدمه.

ويمكن إجراء ذلك باستخدام ملف إعداد يضم قسم [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/. لحالات الاستخدام الأكثر تقدمًا، يُرجى الرجوع إلى الإعدادات المتوافقة التالية.

إعدادات الإدخال

يسرد الجدول التالي خيارات ضبط الإدخال:

الاسم درجة الحرارة التلقائية Type الوصف
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 (800×480، التلقائي)
  • 720 بكسل (1280×720)
  • 1080p (1920×1080)

لإتاحة نِسب العرض إلى الارتفاع الأخرى، يمكن للوحدة الرئيسية تحديد هامش للعرض على شاشة عريضة أفقيًا (عمودي) حسب الضرورة. على سبيل المثال، إذا كنت تريد شاشة 1000×600، اضبط درجة الدقة على 720 بكسل (1280×720) وmarginwidth على 280 وmarginheight من 120. ينتج عن ذلك إضافة هامش 140 بكسل على الحافتين اليسرى واليمنى وهامش 60 بكسل في الأعلى والأسفل.

يحاكي المثال التالي عملية التكوين شاشة عادية مقاس 6 بوصة (750 × 450):

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

ويحاكي المثال التالي عملية الضبط شاشة عريضة جدًا:

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

يسرد الجدول التالي خيارات أخرى لضبط الفيديو:

الاسم درجة الحرارة التلقائية Type الوصف
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
...
الاسم درجة الحرارة التلقائية Type الوصف
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 قيمة منطقية تفعيل بيانات جهاز استشعار التروس.

خيارات الضبط المتنوعة

يسرد الجدول التالي خيارات ضبط أخرى:

الاسم درجة الحرارة التلقائية Type الوصف
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 الموضّحة في تشغيل DHU لإيقاف خادم الوحدة الرئيسية وإعادة تشغيله.
  3. شغِّل DHU مرة أخرى.
  4. امنح أي أذونات إضافية مطلوبة على شاشة الهاتف. قد يتم إيقاف تشغيل DHU مرة أخرى.
  5. أعِد تشغيل DHU إذا لزم الأمر.