تتيح لك أداة Desktop Head Unit (DHU) محاكاة وحدة رئيسية لنظام Android Auto على جهاز التطوير، ما يتيح لك تشغيل تطبيقات Android Auto واختبارها. يعمل تطبيق DHU على أنظمة Windows وmacOS وLinux.
بعد تثبيت DHU، يمكنك اختبار تطبيقات Android Auto من خلال توصيل جهازك الجوّال به باستخدام إحدى آليات الاتصال المتوافقة الموضّحة في تشغيل DHU.
للإبلاغ عن أخطاء أو طلب ميزات متعلّقة بـ DHU، استخدِم أداة تتبُّع المشاكل.
تثبيت تطبيق "Android Auto لأجهزة الهاتف"
لتثبيت DHU على جهاز التطوير، اتّبِع الخطوات التالية:
- فعِّل وضع المطوّرين على جهاز جوّال يعمل بنظام التشغيل Android 9 (المستوى 28 من واجهة برمجة التطبيقات) أو إصدار أحدث، كما هو موضّح في إعداد خيارات المطوّرين على الجهاز.
- جمِّع تطبيقك وثبِّته على الجهاز.
- ثبِّت Android Auto على الجهاز. إذا كان تطبيق Android Auto مثبّتًا، تأكَّد من استخدام أحدث إصدار منه.
في "استوديو Android"، افتح SDK Manager وانتقِل إلى علامة التبويب أدوات حزمة تطوير البرامج (SDK)، ثم نزِّل حزمة محاكي الوحدة الرئيسية لسطح المكتب في Android Auto.
أداة SDK Manager التي تعرض الإصدار 2.0 من DHU يتم تثبيت DHU في الدليل
SDK_LOCATION/extras/google/auto/.على أنظمة 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 أو إصدار أحدث، وقد يتطلّب ذلك ترقية نظام التشغيل إلى إصدار متوافق مع GLIBC 2.32 أو إصدار أحدث.
يجب أيضًا تثبيت المكتبتَين 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:
- فعِّل وضع مطوّر البرامج في Android Auto إذا لم يكن مفعَّلاً بعد.
إذا لم يكن خادم وحدة التحكّم الرئيسية قيد التشغيل، افتح قائمة الخيارات الإضافية واختَر بدء تشغيل خادم وحدة التحكّم الرئيسية، كما هو موضّح في الشكل 1.
يظهر على الجهاز إشعار في مساحة الإشعارات يشير إلى أنّ الخادم قيد التشغيل، كما هو موضّح في الشكل 2.
الشكل 1: قائمة السياقات التي تتضمّن خيارات المطوّرين
الشكل 2: إشعار بأنّ خادم وحدة التحكّم الرئيسية قيد التشغيل
في تطبيق Android Auto، انقر على السيارات التي تم ربطها سابقًا بالقرب من أعلى الإعدادات وتأكَّد من تفعيل خيار إضافة سيارات جديدة إلى Android Auto.
وصِّل الجهاز الجوّال بجهاز التطوير باستخدام كابل USB.
تأكَّد من فتح قفل شاشة الجهاز الجوّال حتى يتمكّن من تشغيل تطبيق DHU.
على جهاز التطوير، شغِّل الأمر
adbالتالي لإعادة توجيه اتصالات المقبس من المنفذ 5277 على جهاز التطوير إلى رقم المنفذ نفسه على الجهاز الجوّال. يتيح هذا الإعداد لتطبيق DHU الاتصال بخادم وحدة التحكم الرئيسية الذي يعمل على الجهاز الجوّال عبر مقبس TCP.adb forward tcp:5277 tcp:5277ابدأ تشغيل DHU من خلال تنفيذ الأمر
desktop-head-unit.exeعلى نظام التشغيل Windows أو./desktop-head-unitعلى نظام التشغيل macOS أو Linux، وذلك من الدليلSDK_LOCATION/extras/google/auto/:cd SDK_LOCATION/extras/google/autodesktop-head-unit.exe # Windows./desktop-head-unit # macOS or Linux
- إذا كانت هذه هي المرة الأولى التي تربط فيها الجهاز الجوّال بوحدة 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 |
استخدام بروتوكول نقل بيانات Android Open Accessory (AOA) عبر USB اختياري DEVICE_ID |
-v، --version |
عرض معلومات الإصدار |
-l، --licenses |
عرض تراخيص البرامج المفتوحة المصدر |
-h، --headless |
تشغيل التطبيق في وضع التشغيل بلا واجهة مستخدم رسومية، أي بدون واجهة مستخدم |
-t، --always_show_window_on_top |
عرض نوافذ "مساعد Google" للسيارات فوق النوافذ الأخرى (يكون هذا الخيار غير مفعّل تلقائيًا) |
-?، --help |
عرض قائمة المساعدة |
دليل مستخدم "مساعد Google"
يوضّح هذا القسم الميزات المتوافقة مع تطبيق "مساعد القيادة" وكيفية استخدامها.
يتم إدخال الأوامر في نافذة المحطة الطرفية التي بدأت فيها DHU. يمكن تنفيذ أوامر متعددة في السطر نفسه من خلال الفصل بينها باستخدام ;.
النظام
| الأمر | المفتاح | الوصف |
|---|---|---|
help [command] |
عرض مجموعة الأوامر الكاملة إذا تم تحديد اسم أمر، اعرض المساعدة الخاصة بهذا الأمر. | |
quitexit |
Alt+Q | اخرج من وحدة التحكّم الرئيسية. |
sleep [seconds] |
تنتظر لمدة ثانية واحدة. إذا تم تحديد فترة تأخير، سيتم إيقاف التنفيذ مؤقتًا لمدة seconds. يمكن استخدام ذلك لإنشاء نصوص برمجية للوحدة الرئيسية تتضمّن ./desktop-head-unit < script.txt، مثلاً، في بيئة CI. |
|
screenshot filename.png
|
حفظ لقطة شاشة في filename.png.
|
|
licenses |
عرض تراخيص المكتبات المستخدَمة في DHU | |
keycode keycode
|
أرسِل keycode، وهو أحد الأسماء المُدرَجة في قسم رموز المفاتيح. |
الشاشة التي تعمل باللمس ولوحة اللمس
عند تفعيل اللمس أو لوحة اللمس، يتم تسجيل النقر في نافذة العرض على أنّه حدث لمس، وذلك بالنسبة إلى اللمس، أو في نافذة لوحة اللمس، وذلك بالنسبة إلى لوحة اللمس.
بالنسبة إلى اللمس، يمكنك محاكاة اللمس المتعدد من خلال النقر بزر الماوس الأيمن على موضع الإصبع الأول، ثم النقر مع الاستمرار في الضغط على الزر الأيمن للإصبع الثاني. يبقى موضع التقاء الإصبعين ثابتًا، ويتيح لك تحريك الماوس تدويرهما حول الموضع المركزي أو التصغير والتكبير أو كليهما.
باستخدام لوحة اللمس، انقر مع الاستمرار على الزر الأيسر للتنقّل بين عناصر واجهة المستخدم المختلفة على الشاشة. يؤدي النقر على الزر الأيمن إلى تحديد العنصر الذي تم التركيز عليه.
| الأمر | المفتاح | الوصف |
|---|---|---|
tap x y
|
محاكاة حدث لمس في الإحداثيات المحدّدة |
وحدة تحكّم دوّارة
يتوافق تطبيق "مساعد القيادة في Android" مع وحدات التحكّم الدوّارة. عندما يكون مفعَّلاً، تتوفّر الإجراءات التالية:
- النقر على مفاتيح الأسهم للأعلى والأسفل واليمين واليسار على لوحة التحكّم
- التدوير في اتجاه عقارب الساعة وعكس اتجاه عقارب الساعة
- إجراء حركة نقر سريع مع تدوير الإصبع (خمس خطوات في آن واحد)
- النقر مع الاستمرار على الزرّ السفلي والرجوع إلى الخلف على وحدة التحكّم
يتم إدراج الأوامر واختصارات لوحة المفاتيح في الجدول التالي.
ترسل عجلة التمرير على الماوس أوامر 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. توجد ملفات الصوت هذه في الدليل
SDK_LOCATION/extras/google/auto/voice/.
| اسم الملف | نص |
|---|---|
navhome.wav |
الانتقال إلى الصفحة الرئيسية |
navwork.wav |
الانتقال إلى العمل |
navsoh.wav |
انتقِل إلى "دار أوبرا سيدني". |
navgoogle.wav |
التَّوَجُّهْ إِلَى 1600 Amphitheatre Parkway, California, USA. |
exitnav.wav |
الخروج من التنقّل |
howlong.wav |
ما الوقت المتبقي للوصول؟ |
showtraffic.wav |
إظهار حركة المرور |
showalternateroute.wav |
عرض المسارات البديلة |
pause.wav |
أوقِف الموسيقى مؤقتًا. |
nextturn.wav |
متى سأصل إلى المنعطف التالي؟ |
لتشغيل ملف .wav فردي في موجّه DHU، استخدِم الأمر التالي:
mic play /path/to/filename.wavيسرد الجدول التالي أوامر أخرى متعلقة بالميكروفون:
| الأمر | المفتاح | الوصف |
|---|---|---|
mic begin |
M | فعِّل الميكروفون، محاكيًا النقر على زر عجلة القيادة، وانتظِر إدخال البيانات من ميكروفون الكمبيوتر. |
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 المحدّدة (م/ث^2) أو (بدون تمرير أي مَعلمات) ألغِ ضبط بيانات مقياس التسارع. أدخِل NAN لتخطّي المَعلمات الاختيارية إذا لزم الأمر. |
compass bearing [pitch] [roll] |
اضبط البوصلة على قيم الاتجاه والميل والانحراف المحدّدة (بالدرجات). أدخِل NAN لتخطّي المَعلمات الاختيارية إذا لزم الأمر. |
gyro [x] [y] [z] |
اضبط الجيروسكوب على سرعة الدوران المحدّدة x وy وz (راديان/ثانية) أو (بدون تمرير أي مَعلمات) ألغِ ضبط بيانات الجيروسكوب. أدخِل NAN لتخطّي المَعلمات الاختيارية إذا لزم الأمر. |
location lat long [accuracy]
[altitude] [speed] [bearing] |
اضبط الموقع الجغرافي على قيم خطوط الطول والعرض المحدّدة بالإضافة إلى الدقة (بالمتر) والارتفاع (بالمتر) والسرعة (بالمتر في الثانية) والاتجاه (بالدرجات) الاختيارية. أدخِل 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 | تفعيل الوضع الليلي: سطوع منخفض وتباين عالٍ |
daynightnightday |
لا | التبديل بين الوضع النهاري والليلي |
إدارة التركيز
يتيح DHU محاكاة ما إذا كان Android Auto يركّز على وحدة رأس السيارة أم لا، وذلك باستخدام الأوامر التالية:
| الأمر | الوصف |
|---|---|
focus video {on|off|toggle} |
تفعيل ميزة "تركيز الفيديو" أو إيقافها على وحدة رأس السيارة يؤدي إيقاف تركيز الفيديو إلى محاكاة إخفاء الوحدة الرئيسية لتطبيق Android Auto. |
focus audio {on|off|toggle} |
تفعيل ميزة "تركيز الصوت" أو إيقافها في وحدة التحكّم الرئيسية يؤدي إيقاف ميزة التركيز على الصوت إلى محاكاة وحدة الرأس التي تشغّل مصدر الصوت الخاص بها. |
focus nav {on|off|toggle} |
تفعيل ميزة "تركيز التنقّل" أو إيقافها على وحدة الرأس يؤدي إيقاف التركيز على التنقّل إلى محاكاة الوحدة الرئيسية التي تشغّل نظام التنقّل الخاص بها. |
القيود وحالة القيادة
يتيح DHU محاكاة بعض القيود عندما تكون المركبة في حالة حركة، مثل إيقاف لوحة المفاتيح وعدم السماح بإعدادات الهاتف، وذلك باستخدام الأوامر التالية:
| الأمر | المفتاح | الوصف |
|---|---|---|
restrict none |
U | أوقِف جميع القيود. |
restrict all |
Shift+U | فعِّل جميع القيود، مثل محاكاة القيادة. |
مجموعة العدادات
يتيح DHU محاكاة مجموعة أدوات القياس. تكون هذه الشاشة عادةً خلف عجلة القيادة، وتعرض معلومات أساسية أثناء التنقّل حول المنعطف التالي، مثل اسم الطريق التالي أو سهم الانعطاف أو المسافة أو الوقت. يعرض أيضًا معلومات حول المكالمات الهاتفية الجارية.
يمكن تفعيل ذلك باستخدام الإدخال instrumentcluster في القسم [general] من ملف الإعدادات، أو باستخدام الإدخالين navcluster أو phonecluster للتحكّم في كل ميزة على حدة.
[general]
...
instrumentcluster = true
شاشة العرض
تتضمّن بعض المركبات شاشات عرض مجمّعة يمكنها عرض معلومات مرئية غنية، مثل مربّعات الخرائط. بدءًا من الإصدار 2.1 من DHU (المتاح حاليًا من خلال قناة الإصدار التجريبي من "استوديو Android")، يمكنك محاكاة هذا النوع من الشاشات على جهاز التطوير.
يمكن إجراء ذلك باستخدام ملف إعداد يتضمّن قسم [display] خاصًا بالمجموعة.
تتيح أقسام [display] خيارات إعدادات الفيديو نفسها التي يتيحها
العرض الرئيسي الذي تم ضبط إعداداته في قسم [general] من الملف.
...
# 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 عرض معلومات إضافية لإظهار حالة تشغيل الوسائط، مثل المقطع الصوتي الذي يتم تشغيله.
يمكن تفعيل هذه الميزة باستخدام الإدخال playbackstatus في القسم [general].
[general]
...
playbackstatus = true
رموز المفاتيح
توفّر DHU مجموعة من رموز المفاتيح التلقائية التي تحاكي مجموعة أزرار الاختصارات المتوفّرة عادةً في المركبات. على سبيل المثال، يمكن تفعيل home keycode في طلب DHU على النحو التالي:
keycode homeيسرد الجدول التالي رموز المفاتيح الأخرى المتاحة:
| رمز المفتاح | الوصف |
|---|---|
home |
انتقِل إلى الشاشة الرئيسية. |
back |
الرجوع |
callendcall
|
إجراء مكالمة أو إنهاؤها |
search |
بدء البحث |
media_play_pausemedia_playmedia_pause |
تشغيل الوسائط أو إيقافها مؤقتًا |
media_nextmedia_previous |
الانتقال إلى مقطع الوسائط التالي أو السابق |
media |
انتقِل إلى تطبيق الموسيقى التلقائي. |
navigation |
انتقِل إلى تطبيق التنقّل التلقائي. |
tel |
انتقِل إلى تطبيق الهاتف التلقائي. |
ضبط إعدادات "وحدة عرض بيانات السيارة"
يتيح DHU استخدام ملف إعدادات .ini لتغيير أوضاع الإدخال بين اللمس ووحدة التحكّم الدوّارة، ولضبط عدد اللقطات في الثانية ودرجة الدقة وعدد النقاط في البوصة التي تطلبها وحدة الرأس من الهاتف.
الموقع التلقائي لملف الإعداد هو ~/.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، الإعداد التلقائي)
- 720 بكسل (1280×720)
- 1080 بكسل (1920×1080)
لدعم نسب عرض إلى ارتفاع أخرى، يمكن لوحدة التحكّم الرئيسية تحديد هامش لإنشاء تأثير letterbox (أو pillarbox) حسب الحاجة. على سبيل المثال، إذا كنت تريد شاشة بحجم 1000×600، اضبط الدقة على 720p (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
يسرد الجدول التالي خيارات أخرى لإعداد الفيديو:
| الاسم | تلقائي | النوع | الوصف |
|---|---|---|---|
resolution |
800x480 |
سلسلة | قيمة من: 800x480 أو 1280x720 أو 1920x1080. |
dpi |
160 |
عدد صحيح | |
normalizedpi |
false |
قيمة منطقية | عندما تكون قيمة true، قلِّل حجم نافذة DHU لاحتساب قيم DPI الأكبر. عندما تكون القيمة false، تؤدي قيم النقاط لكل بوصة الأكبر إلى نوافذ أكبر، وهو ما لا يحاكي الشاشات الحقيقية، ولكنه يساعد في فحص المحتوى المرئي. |
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 |
سلاسل نصية | واحد أو أكثر من العناصر التالية في قائمة مفصولة بفواصل:
|
evconnectors |
|
سلاسل نصية | صفر أو أكثر من القيم التالية، في قائمة مفصولة بفواصل:
fueltypes تتضمّن electric.
|
تحديد المشاكل وحلّها
في بعض الأحيان، يعرض تطبيق "مساعد Google" على السيارة شاشة فارغة عند الاتصال لأول مرة. يمكنك حلّ هذه المشكلة باتّباع الخطوات التالية:
- أغلِق تطبيق "مساعد القيادة".
- اتّبِع الخطوة 5 الموضّحة في تشغيل DHU لإيقاف خادم Head Unit وإعادة تشغيله.
- أعِد تشغيل تطبيق "Android Auto على الهاتف".
- امنح أي أذونات إضافية مطلوبة على شاشة الهاتف. قد يتم إيقاف وحدة DHU مرة أخرى.
- أعِد تشغيل تطبيق "مساعد Google" في السيارة إذا لزم الأمر.