यह सुविधा भागीदारों को यह चुनने में सक्षम बनाती है कि समय को कैसे सिंक्रनाइज़ किया जाए, चाहे वह एंड्रॉइड ऑटोमोटिव ऑपरेटिंग सिस्टम (एएओएस) से हो या वाहन सिस्टम से एंड्रॉइड तक। गुणवत्ता कार्यान्वयन सुनिश्चित करने के लिए, आप मूल्यों को प्रभावी ढंग से प्रचारित करने के लिए नीचे वर्णित दो नई वीएचएएल संपत्तियों में से एक का उपयोग करने के लिए एएओएस को कॉन्फ़िगर कर सकते हैं। उपयोग:
-
ANDROID_EPOCH_TIME
समय के लिए सत्य के स्रोत के रूप में Android का उपयोग करने के लिए। वीएचएएल इस केवल-लिखने वाली संपत्ति का समर्थन करता है, जो एंड्रॉइड से अन्य वाहन प्रणालियों, जैसे इलेक्ट्रॉनिक कंट्रोल यूनिट (ईसीयू) और बॉडी कंट्रोल मॉड्यूल (बीसीएम) में समय परिवर्तन का संचार करता है। -
EXTERNAL_CAR_TIME
समय के लिए सत्य के स्रोत के रूप में Android का उपयोग नहीं करने के लिए। इस मामले में, वीएचएएल केवल पढ़ने के लिएEXTERNAL_CAR_TIME
संपत्ति का समर्थन करता है, जो अन्य वाहन प्रणालियों (जैसे ईसीयू और बीसीएम) से एंड्रॉइड में समय परिवर्तन का संचार करता है।
AAOS Android के भीतर अलग-अलग समय स्रोतों को प्राथमिकता देने में आपकी मदद करने के लिए एक कॉन्फ़िगर करने योग्य TimeDetectorStrategy
भी प्रदान करता है।
Android समय के लिए सत्य का स्रोत है
जब एंड्रॉइड को समय के स्रोत के रूप में उपयोग किया जाता है, तो ओईएम अन्य कार सिस्टम (ईसीयू और बीसीएम सहित) को एंड्रॉइड समय के साथ सिंक्रनाइज़ कर सकते हैं।
ऐसा करने के लिए, VHAL कार्यान्वयन को केवल-लिखने वाली संपत्ति ANDROID_EPOCH_TIME
संपत्ति का समर्थन करना चाहिए। एंड्रॉइड बूट समय पर और जब भी एंड्रॉइड में समय-स्रोत बदल जाता है, सिस्टम समय को पढ़कर संपत्ति के लिए एक अपडेट प्रकाशित करता है।
Android समय के लिए सत्य का स्रोत नहीं है
जब Android का उपयोग समय के स्रोत के रूप में नहीं किया जाता है, तो आप समय के लिए सत्य के स्रोत के रूप में Android समय को सिंक्रनाइज़ कर सकते हैं (उदाहरण के लिए, ECU या BCM के साथ)। इस मामले में, वीएचएएल कार्यान्वयन को केवल पढ़ने के लिए संपत्ति EXTERNAL_CAR_TIME
का समर्थन करना चाहिए और जब भी समय का स्रोत बदलता है या घड़ी को फिर से कैलिब्रेट करता है तो इस संपत्ति में अपडेट प्रकाशित करना चाहिए।
ओईएम को यह भी सुनिश्चित करना चाहिए कि:
-
config_autoTimeSourcesPriority
मानcore/res/res/values/config.xml
में समाहित हैं। - CarServices ओवरले में
config_enableExternalCarTimeToExternalTimeSuggestion
गुणpackages/services/Car/service/res/values/config.xml
को कॉन्फ़िगर करता है)true
पर सेट है। -
TimeDetectorStrategy
कॉन्फ़िगरेशन में बाहरी समय की उपयुक्त प्राथमिकता होती है. अधिक जानने के लिए, जीएनएसएस टाइम डिटेक्शन देखें। उदाहरण के लिए:<!-- Specifies priority of automatic time sources. Suggestions from higher entries in the list take precedence over lower ones. See com.android.server.timedetector.TimeDetectorStrategy for available sources. --> <string-array name="config_autoTimeSourcesPriority"> <item>external</item> <item>gnss</item> <item>network</item> <item>telephony</item> </string-array>
1
Android आंतरिक कार्यान्वयन विवरण
निम्नलिखित प्रवाह तब होता है जब ANDROID_EPOCH_TIME
VHAL गुण समर्थित होता है:
-
TimeHalService
(CarServices में) Android सिस्टम सेIntent.ACTION_TIME_CHANGED
के लिए एक प्रसारण प्राप्त करता है। -
TimeHalService
VHAL संपत्तिANDROID_EPOCH_TIME
के लिए एक अद्यतन प्रकाशित करता है। - वीएचएएल विभिन्न ईसीयू और/या बीसीएम इकाइयों को प्राप्त समय मूल्य का प्रचार कर सकता है।
निम्नलिखित प्रवाह तब होता है जब EXTERNAL_CAR_TIME
VHAL गुण समर्थित होता है:
- VHAL
EXTERNAL_CAR_TIME
प्रॉपर्टी को अपडेट करता है। -
TimeHalService
(CarServices में) सब्सक्रिप्शन के माध्यम से संपत्ति को पढ़ता है। -
TimeHalService
TimeManager
एकExternalTimeSuggestion
समय सुझाव बनाता और भेजता है। -
TimeManager
सुझाव कोTimeDetectorService
को अग्रेषित करता है। -
TimeDetectorService
एक नया सिस्टम समय चुनने के लिएTimeDetectorStrategy
का उपयोग करता है।