डेस्कटॉप हेड यूनिट का इस्तेमाल करके जांच करना

डेस्कटॉप हेड यूनिट (डीएचयू) आपकी डेवलपमेंट मशीन को Android Auto की मुख्य यूनिट, ताकि आप Android Auto ऐप्लिकेशन चला सकें और उनकी जांच कर सकें. डीएचयू Windows, macOS, और Linux सिस्टम पर चलता है.

डीएचयू इंस्टॉल करने के बाद, अपने इनमें से किसी एक का इस्तेमाल करके, अपने मोबाइल डिवाइस को Android Auto ऐप्लिकेशन से कनेक्ट करें DHU चलाएं में बताए गए काम करने वाले कनेक्शन मैकेनिज़्म.

डीएचयू से जुड़ी सुविधाओं का अनुरोध करने या गड़बड़ियों की शिकायत करने के लिए, समस्या को ट्रैक करने वाला टूल.

DHU इंस्टॉल करें

अपनी डेवलपमेंट मशीन पर डीएचयू इंस्टॉल करने के लिए यह तरीका अपनाएं:

  1. Android 9 (एपीआई लेवल 28) पर चलने वाले मोबाइल डिवाइस पर डेवलपर मोड चालू करना ऑन-डिवाइस डेवलपर को कॉन्फ़िगर करें विकल्प.
  2. डिवाइस पर अपने ऐप्लिकेशन को कंपाइल और इंस्टॉल करें.
  3. Android Auto इंस्टॉल करें डिवाइस पर. अगर Android Auto पहले से इंस्टॉल है, तो पक्का करें कि सबसे नए वर्शन का इस्तेमाल कर रहे हैं.
  4. Android Studio में, SDK Manager खोलें और SDK टूल टैब पर जाएं. इसके बाद, Android Auto डेस्कटॉप हेड यूनिट एम्युलेटर पैकेज.

डीएचयू 2.0 दिखाने वाला एसडीके मैनेजर

डीएचयू को SDK_LOCATION/extras/google/auto/ डायरेक्ट्री.

  1. Linux या macOS सिस्टम पर, उस डायरेक्ट्री में नीचे दिए गए निर्देश को चलाने के लिए, पक्का करें कि DHU बाइनरी पर एक्ज़ीक्यूट किया जा सकता है:

    chmod +x ./desktop-head-unit
    

Linux के लिए अतिरिक्त चरण

अगर Linux सिस्टम पर DHU वर्शन 2.x चलाया जा रहा है, तो आपको कुछ अतिरिक्त लाइब्रेरी होनी चाहिए. DHU बाइनरी, GLIBC के 2.32 या इसके बाद वाले वर्शन पर निर्भर करता है. इस निर्देश की मदद से, अपने सिस्टम का GLIBC वर्शन देखा जा सकता है:

ldd --version

अगर वर्शन 2.32 से पहले का वर्शन है, तो GLIBC को 2.32 से अपडेट करें या है, जिसके लिए आपको ओएस को ऐसे वर्शन पर अपग्रेड करना पड़ सकता है: GLIBC के 2.32 या इसके बाद के वर्शन के साथ काम करता है.

आपको libc++1 और libc++abi1 लाइब्रेरी भी इंस्टॉल करनी होंगी. इंस्टॉलेशन प्रक्रिया आपके Linux डिस्ट्रिब्यूशन के आधार पर अलग-अलग होती है. उदाहरण के लिए, चालू Debian के ज़रिए हासिल किए गए Linux डिस्ट्रिब्यूशन के लिए, आप लाइब्रेरी को इसके साथ इंस्टॉल कर सकते हैं आदेश:

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

DHU के रिलीज़ से पहले वाले वर्शन इंस्टॉल करें

डीएचयू के रिलीज़ से पहले वाले वर्शन का ऐक्सेस पाने के लिए, झलक देखें या अपडेट करने के लिए, Android Studio के इसका चैनल अपडेट करें बीटा चैनल पर अपने मौजूदा Android Studio इंस्टॉलेशन को इंस्टॉल करें.

DHU चलाएं

डीएचयू इंस्टॉल करने के बाद, Android Auto ऐप्लिकेशन को कनेक्ट करके अपने मोबाइल डिवाइस और वर्कस्टेशन है. अपने डिवाइस को कनेक्ट करके DHU मोबाइल डिवाइस से डेवलप की जा रही है, तो ऐक्सेसरी मोड (DHU 2.x के लिए सुझाया गया) या ADB टनलिंग.

ऐक्सेसरी मोड का इस्तेमाल करके कनेक्ट करें

Android Auto, Android Open की मदद से DHU वर्शन 2.x से कनेक्ट करने पर काम करता है ऐक्सेसरी (एओए) प्रोटोकॉल का पालन करने के लिए, नीचे दिए गए निर्देश का इस्तेमाल करें:

./desktop-head-unit --usb

डीएचयू डिफ़ॉल्ट रूप से, उपलब्ध यूएसबी डिवाइसों की सूची को स्कैन करता है और जांच करता है सबसे पहले काम करने वाले डिवाइस से कनेक्ट करें. किसी खास डिवाइस को टारगेट करने के लिए, --usb निर्देश के हिस्से के तौर पर डिवाइस आईडी का इस्तेमाल किया गया है, जैसा कि इस तरह से किया गया है:

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

ADB टनलिंग का इस्तेमाल करके कनेक्ट करें

इस तरीके का इस्तेमाल करने के लिए, Android Auto की मुख्य यूनिट से कनेक्शन सेट अप करना ज़रूरी है Android डीबग ब्रिज (adb) पर सर्वर बनाएं. फ़ॉलो करें टनलिंग को सेट अप करने और डीएचयू चलाने के लिए यह तरीका अपनाएं:

  1. Android Auto का डेवलपर मोड चालू करना अगर पहले से नहीं है.
  2. अगर मुख्य यूनिट सर्वर पहले से नहीं चल रहा है, तो ओवरफ़्लो मेन्यू खोलें और मुख्य यूनिट सर्वर शुरू करें चुनें, जैसा कि पहली इमेज में दिखाया गया है.

    डिवाइस पर, सूचना देने वाली जगह में एक फ़ोरग्राउंड सेवा दिखती है दिखाता है कि सर्वर चल रहा है, जैसा कि दूसरी इमेज में दिखाया गया है.

    डेवलपर के लिए सेटिंग और टूल वाला संदर्भ मेन्यू

    पहला डायग्राम. डेवलपर के लिए सेटिंग और टूल वाला संदर्भ मेन्यू.

    सूचना कि मुख्य यूनिट सर्वर चल रहा है

    दूसरा डायग्राम. सूचना कि मुख्य यूनिट सर्वर चल रहा है.

  3. Android Auto ऐप्लिकेशन में, सबसे ऊपर के पास पहले से कनेक्ट की गई कारें पर टैप करें सेटिंग में जाएं और पक्का करें कि Android Auto में नई कार जोड़ें चालू हो.

  4. मोबाइल डिवाइस को यूएसबी का इस्तेमाल करके डेवलपमेंट मशीन से कनेक्ट करें.

  5. पक्का करें कि मोबाइल डिवाइस की स्क्रीन अनलॉक हो, ताकि यह काम कर सके DHU लॉन्च करना.

  6. डेवलपमेंट मशीन पर, सॉकेट फ़ॉरवर्ड करने के लिए, नीचे दिया गया adb निर्देश चलाएं डेवलपमेंट मशीन के पोर्ट 5277 से उसी पोर्ट नंबर पर Android डिवाइस. यह कॉन्फ़िगरेशन, डीएचयू को हेड से कनेक्ट करने देता है मोबाइल डिवाइस पर टीसीपी सॉकेट पर चलने वाला यूनिट सर्वर.

    adb forward tcp:5277 tcp:5277
    
  7. Windows पर desktop-head-unit.exe निर्देश देकर, DHU शुरू करें या macOS या Linux पर ./desktop-head-unit, SDK_LOCATION/extras/google/auto/ डायरेक्ट्री:

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

डेवलपमेंट मशीन पर दौड़ता हुआ डीएचयू

  1. अगर मोबाइल डिवाइस को पहली बार डीएचयू से कनेक्ट किया जा रहा है, तो मोबाइल डिवाइस की स्क्रीन पर जाकर, सेवा की शर्तें स्वीकार करें और अनुमति सेटिंग चुनें.

डीएचयू शुरू होने के बाद, डीएचयू कंसोल के निर्देशों का इस्तेमाल किया जा सकता है आपके ऐप्लिकेशन को चलाने और उसकी जांच करने के लिए.

कमांड लाइन के विकल्प

डिफ़ॉल्ट रूप से, मुख्य यूनिट सर्वर पोर्ट 5277 पर कनेक्ट होता है. होस्ट को बदलने के लिए या पोर्ट करने के लिए, --adb=<[localhost:]port> का इस्तेमाल करें फ़्लैग, जैसा कि नीचे दिए गए उदाहरण में दिखाया गया है:

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

डिफ़ॉल्ट रूप से, डीएचयू, Android Auto के साथ काम करने वाली मुख्य यूनिट की टचस्क्रीन का यूज़र इंटरफ़ेस. DHU पर क्लिक करके उपयोगकर्ता के टच को सिम्युलेट करें एक माउस. इनपुट के लिए रोटरी कंट्रोलर का इस्तेमाल करने वाली हेड यूनिट को एम्युलेट करने के लिए, -i rotary फ़्लैग का इस्तेमाल करें, जैसा कि इस उदाहरण में दिखाया गया है:

./desktop-head-unit -i controller

जब डीएचयू रोटरी-कंट्रोलर मोड में होता है, तो कीबोर्ड शॉर्टकट का इस्तेमाल करके ये आपको कंट्रोलर ऑपरेशन का इस्तेमाल करने की सुविधा देते हैं. रोटरी कंट्रोलर देखें सेक्शन देखें. रोटरी कंट्रोलर मोड में, डीएचयू माउस को अनदेखा कर देता है क्लिक. आपको सिम्युलेटेड रोटरी-कंट्रोलर की मदद से 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 यूएसबी एओए ट्रांसपोर्ट का इस्तेमाल करें. ज़रूरी नहीं DEVICE_ID.
-v, --version वर्शन की जानकारी दिखाएं.
-l, --licenses ओपन सोर्स लाइसेंस दिखाएं.
-h, --headless बिना यूज़र इंटरफ़ेस (यूआई) के, बिना ग्राफ़िक यूज़र इंटरफ़ेस वाले मोड में चलाएं.
-t, --always_show_window_on_top DHU विंडो को दूसरी विंडो के ऊपर दिखाएं (डिफ़ॉल्ट रूप से बंद)
-?, --help सहायता सूची दिखाएं.

DHU के इस्तेमाल के लिए गाइड

इस सेक्शन में, डीएचयू के साथ काम करने वाली सुविधाओं के बारे में बताया गया है. साथ ही, यह भी बताया गया है कि ताकि वे इनका इस्तेमाल कर सकें.

कमांड, उस टर्मिनल विंडो में डाले जाएंगे जहां से आपने DHU शुरू किया था. एक से ज़्यादा कमांड को एक ही लाइन में चलाया जा सकता है. इसके लिए, कमांड को ; से अलग करना होगा.

सिस्टम

निर्देश सुरक्षा कुंजी ब्यौरा
help [command] सभी निर्देश का सेट दिखाएं. अगर किसी निर्देश का नाम तय किया गया है, तो उस निर्देश के लिए मदद दिखाएं.
quit
exit
Alt+Q मुख्य यूनिट से बाहर निकलें.
sleep [seconds] एक सेकंड के लिए सोएँ. अगर देरी का समय बताया गया है, तो इतनी देर तक सोएं seconds. इसका इस्तेमाल मुख्य यूनिट को स्क्रिप्ट करने के लिए किया जा सकता है ./desktop-head-unit < script.txt में, जैसे कि सीआई पर्यावरण को ध्यान में रखते हुए काम करना.
screenshot filename.png filename.png. में स्क्रीनशॉट सेव करें
licenses डीएचयू में इस्तेमाल की जाने वाली लाइब्रेरी के लाइसेंस दिखाएं.
keycode keycode keycode भेजें. यह इस सूची में दिए गए नामों में से एक है कीकोड सेक्शन.

टच और टचपैड

जब टच या टचपैड चालू हो, तो या टचपैड विंडो, टचपैड के लिए, डिसप्ले विंडो, टच इवेंट.

छूकर इस्तेमाल करने के लिए, पहली उंगली से राइट क्लिक करके मल्टी-टच सुविधा को सिम्युलेट करें स्थान चुनें, फिर दूसरी उंगली के दाएं बटन पर क्लिक करके रखें. कॉन्टेंट बनाने दो उंगलियों का बीच वाला पॉइंट बना रहता है; माउस को चलाने से आपको उन्हें बीच में घुमाएं, पिंच इन और आउट करें या दोनों को.

टचपैड पर, अलग-अलग यूज़र इंटरफ़ेस (यूआई) के बीच स्क्रोल करने के लिए, बाईं ओर मौजूद बटन को क्लिक करके रखें स्क्रीन पर मौजूद एलिमेंट. दायां बटन क्लिक करने पर, वह एलिमेंट चुना जाता है जिसमें फ़ोकस.

निर्देश सुरक्षा कुंजी ब्यौरा
tap x y तय किए गए निर्देशांकों पर टच इवेंट को सिम्युलेट करें.

रोटरी कंट्रोलर

डीएचयू में रोटरी कंट्रोलर काम करता है. जब यह होता है चालू है, तो नीचे दी गई कार्रवाइयां काम करती हैं:

  • डी-पैड पर ऊपर, नीचे, बाएं, और दाएं क्लिक करके
  • घड़ी की सुई की दिशा में और घड़ी की उलटी दिशा में घूम रहा है
  • घुमाना फ़्लिक कर रहा है (एक साथ पांच कदम)
  • कंट्रोलर पर नीचे और वापस जाकर क्लिक करना

कमांड और की बाइंडिंग, नीचे दी गई टेबल में दी गई हैं.

माउस पर मौजूद स्क्रोल व्हील से 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 फ़ाइल को चलाने के लिए, नीचे दिए गए निर्देश का इस्तेमाल करें:

mic play /path/to/filename.wav

यहां दी गई टेबल में, माइक्रोफ़ोन से जुड़े अन्य निर्देशों की सूची दी गई है:

निर्देश सुरक्षा कुंजी ब्यौरा
mic begin क॰ स्टीयरिंग व्हील पर क्लिक करते हुए माइक्रोफ़ोन चालू करें बटन पर क्लिक करें और कंप्यूटर माइक्रोफ़ोन से इनपुट मिलने की इंतज़ार करें.
mic play filename.wav माइक्रोफ़ोन चालू करें और बताई गई WAV फ़ाइल रिकॉर्डिंग चलाएं. ध्यान दें: आपको चल रही WAV फ़ाइल की आवाज़ सुनाई नहीं दे रही, लेकिन आपको Android Auto से मिला जवाब.
mic repeat mic play के साथ इस्तेमाल की गई पिछली रिकॉर्डिंग को दोहराएं.
mic reject {on|off} माइक्रोफ़ोन के लिए अनुरोध अस्वीकार करने की सुविधा चालू या बंद करें. इसके चालू होने पर, सभी माइक्रोफ़ोन के अनुरोध अस्वीकार कर दिए गए हैं.

सेंसर

डीएचयू का इस्तेमाल करके, वाहन के सेंसर डेटा में बदलावों को सिम्युलेट किया जाता है. कमांड का इस्तेमाल किया जा सकता है. सेंसर डेटा की नकल करने और उसे 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 के बताए गए घूमने की स्पीड (रैड/s) पर सेट करें या (बिना कोई पैरामीटर दिए) से जाइरोस्कोप डेटा अनसेट करें. अगर ज़रूरी हो, तो वैकल्पिक पैरामीटर को छोड़ने के लिए, NAN में पास करें.
location lat long [accuracy] [altitude] [speed] [bearing] स्थान को वैकल्पिक सटीकता (m), ऊंचाई (m), गति (m/s), और बियरिंग (डिग्री) के साथ-साथ अक्षांश और देशांतर के विशिष्ट मान पर सेट करें. अगर ज़रूरी हो, तो वैकल्पिक पैरामीटर को छोड़ने के लिए, NAN में पास करें.
odometer km [current_trip_km] ओडोमीटर को तय किए गए किलोमीटर पर सेट करें. साथ ही, मौजूदा यात्रा की किलोमीटर की वैल्यू को भी तय करें.
speed [speed] वाहन की रफ़्तार को बताई गई वैल्यू (मी/से) या (बिना किसी वैल्यू के) पर सेट करें सेंसर बंद हो जाता है.
tollcard {insert|remove} टोल कार्ड डालें या हटाएं.
gps_satellite number_in_use [[azimuth] [elevation] [prn] [snr] [used_in_fix]] जीपीएस सैटलाइट सेंसर को तय की गई संख्या पर सेट करें. इसके लिए, ऐज़िमुथ की वैकल्पिक सूची (0 से 360 की रेंज में डिग्री), ऊंचाई (0 से 90 की रेंज में डिग्री), pRN (स्यूडोरैंडम नॉइज़), snr (dB), और सुधार करने में इस्तेमाल की जाने वाली वैल्यू (true या false) सेट करें.
parking_brake engaged पार्किंग ब्रेक सेंसर को true या false पर सेट करें.
gear gear_value गियर सेंसर को बताई गई वैल्यू पर सेट करें. उदाहरण के लिए, न्यूट्रल के लिए 0, ड्राइव के लिए 100, पार्क के लिए 101, और रिवर्स के लिए 102.

दिन और रात वाले मोड

डीएचयू, दिन और रात वाले मोड के बीच बदलावों को सिम्युलेट करने में मदद करता है. और की बाइंडिंग:

निर्देश सुरक्षा कुंजी ब्यौरा
day Shift के साथ N दबाएं डे मोड चालू करें—ज़्यादा चमक, सभी रंग.
night Ctrl के साथ N नाइट मोड—कम चमक, ज़्यादा कंट्रास्ट वाला मोड चालू करें.
daynight
nightday
उत्तर दिन या रात मोड टॉगल करें.

फ़ोकस मैनेजमेंट

डीएचयू, यह सिम्युलेट करने की सुविधा देता है कि Android Auto का फ़ोकस हेड पर है या नहीं यूनिट देखने का तरीका:

निर्देश ब्यौरा
focus video {on|off|toggle} मुख्य यूनिट पर, वीडियो फ़ोकस की सुविधा को चालू या बंद करें. वीडियो बंद किया जा रहा है फ़ोकस, नेटिव मोड में जाने वाली हेड यूनिट को सिम्युलेट करता है.
focus audio {on|off|toggle} मुख्य यूनिट पर ऑडियो फ़ोकस को चालू या बंद करें. ऑडियो बंद किया जा रहा है फ़ोकस, मुख्य यूनिट को उसके खुद के ऑडियो सोर्स के साथ सिम्युलेट करता है.
focus nav {on|off|toggle} मुख्य यूनिट पर नेविगेशन फ़ोकस को चालू या बंद करें. बंद किया जा रहा है नेविगेशन फ़ोकस, अपना नेविगेशन सिस्टम चलाने वाली मुख्य यूनिट को सिम्युलेट करता है.

पाबंदियां और ड्राइविंग की स्थिति

डीएचयू की मदद से, वाहन के चलने के दौरान कुछ पाबंदियों का पालन किया जा सकता है, जैसे, कीबोर्ड को बंद करना और फ़ोन कॉन्फ़िगरेशन की अनुमति न देने के लिए, ये निर्देश होंगे:

निर्देश सुरक्षा कुंजी ब्यौरा
restrict none यू सभी पाबंदियां बंद करें.
restrict all Shift+U सभी पाबंदियों को चालू करें, जैसे कि ड्राइविंग को सिम्युलेट करना.

इंस्ट्रुमेंट क्लस्टर

डीएचयू, इंस्ट्रुमेंट क्लस्टर को एम्युलेट करने की सुविधा देता है. यह क्लस्टर आम तौर पर पीछे होता है स्टीयरिंग व्हील है और वह नेविगेशन के दौरान अगला मोड़—जैसे अगली सड़क का नाम या कोई मोड़ वाला तीर—दूरी या समय. इसमें फ़ोन पर चल रहे कॉल की जानकारी भी दिखती है.

डीएचयू की इंस्ट्रुमेंट क्लस्टर विंडो, जिसमें नेविगेशन और कॉल, दोनों दिख रहे हैं
  राज्य की जानकारी

इस सुविधा को [general] में मौजूद instrumentcluster एंट्री का इस्तेमाल करके चालू किया जा सकता है सेक्शन में या navcluster या phonecluster के हिसाब से फ़िल्टर करें एंट्री का इस्तेमाल करें.

[general]
...
instrumentcluster = true

क्लस्टर डिसप्ले

कुछ वाहनों में क्लस्टर डिसप्ले होते हैं. इन डिसप्ले की मदद से बेहतर विज़ुअल दिखाए जा सकते हैं जानकारी, जैसे कि मैप की टाइल. डीएचयू के 2.1 वर्शन से शुरू हो रहा है (फ़िलहाल, Android स्टूडियो बीटा अपडेट चैनल का इस्तेमाल करके उपलब्ध कराया जा सकता है. ), तो आप अपनी डेवलपमेंट मशीन पर इस तरह के डिसप्ले को एम्युलेट कर सकते हैं.

क्लस्टर [display] सेक्शन वाली कॉन्फ़िगरेशन फ़ाइल का इस्तेमाल करके ऐसा किया जा सकता है. यह [display] सेक्शन पर काम करता है मुख्य डिसप्ले के तौर पर वीडियो कॉन्फ़िगरेशन के विकल्प फ़ाइल के [general] सेक्शन में कॉन्फ़िगर किया गया है.

तीसरी इमेज. डीएचयू को चलाते समय मुख्य स्क्रीन सेकंडरी क्लस्टर डिसप्ले.
चौथी इमेज. 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

मीडिया प्लेबैक स्थिति

डीएचयू, मीडिया प्लेबैक दिखाने के लिए अतिरिक्त जानकारी के साथ काम करता है जैसे कि कौनसा ट्रैक चल रहा है.

वीडियो चलाने की जानकारी दिखाने वाली डीएचयू की मीडिया प्लेबैक स्टेटस विंडो

इस सुविधा को [general] सेक्शन में मौजूद playbackstatus एंट्री का इस्तेमाल करके चालू किया जा सकता है.

[general]
...
playbackstatus = true

कीकोड

डीएचयू, डिफ़ॉल्ट कीकोड का एक सेट उपलब्ध कराता है, जो शॉर्टकट के सेट को सिम्युलेट करता है ऐसे बटन जो आम तौर पर वाहनों में उपलब्ध होते हैं. उदाहरण के लिए, डीएचयू प्रॉम्प्ट में home कीकोड को इस तरह ट्रिगर किया जा सकता है:

keycode home

नीचे दी गई टेबल में अन्य उपलब्ध कीकोड दिए गए हैं:

कुंजी कोड ब्यौरा
home होम स्क्रीन पर जाएं.
back वापस जाएं.
call
endcall
कॉल करें या कॉल करें.
search खोज ट्रिगर करें.
media_play_pause
media_play
media_pause
मीडिया चलाना या रोकना.
media_next
media_previous
अगले या पिछले मीडिया ट्रैक पर जाना.
media डिफ़ॉल्ट मीडिया ऐप्लिकेशन पर जाएं.
navigation डिफ़ॉल्ट नेविगेशन ऐप्लिकेशन पर जाएं.
tel डिफ़ॉल्ट टेलीफ़ोन ऐप्लिकेशन पर जाएं.

डीएचयू को कॉन्फ़िगर करें

डीएचयू, कॉन्फ़िगरेशन .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 पर तीन वीडियो रिज़ॉल्यूशन काम करते हैं:

  • 480 पिक्सल (800x480, डिफ़ॉल्ट)
  • 720 पिक्सल (1280x720)
  • 1080 पिक्सल (1920x1080)

अन्य आसपेक्ट रेशियो (लंबाई-चौड़ाई का अनुपात) के हिसाब से काम करने के लिए, हेड यूनिट ज़रूरत के हिसाब से लेटरबॉक्स (पिलरबॉक्स) पर मार्जिन डालें. उदाहरण के लिए, अगर अगर आपको 1000x600 की स्क्रीन चाहिए, तो रिज़ॉल्यूशन 720p (1280x720) पर सेट करें और 280 का marginwidth और 120 में से marginheight. इससे यह असर पड़ता है बाएं और दाएं किनारों पर 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 विंडो का साइज़ छोटा करें, ताकि वह बड़ा हो सके डीपीआई वैल्यू. 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 शामिल हो.

समस्या हल करें

कभी-कभी पहली बार कनेक्ट करने पर डीएचयू एक खाली स्क्रीन दिखाता है. इससे बचने के लिए, ये काम किए जा सकते हैं:

  1. डीएचयू बंद करें.
  2. डीएचयू को बंद करने और रीस्टार्ट करने के लिए, डीएचयू चलाएं में बताए गए पांचवें चरण का पालन करें हेड यूनिट सर्वर पर.
  3. डीएचयू को फिर से चालू करें.
  4. अगर फ़ोन की स्क्रीन पर अनुरोध किया गया है, तो अतिरिक्त अनुमतियां दें. डीएचयू एक बार और बंद हो सकता है.
  5. अगर ज़रूरत हो, तो डीएचयू को रीस्टार्ट करें.