Android Automotive 25Q4

इस पेज पर, Android Automotive OS (AAOS) 25Q4 रिलीज़ में शामिल सुविधाओं और सुधारों के बारे में बताया गया है. AAOS 25Q4, आधिकारिक तौर पर रिलीज़ किया गया वर्शन है. 25Q4 में आठ नई सुविधाएं जोड़ी गई हैं और 180 समस्याओं को ठीक किया गया है.

AAOS 25Q4, एपीआई लेवल 36 का इस्तेमाल करता है.

सुविधाएं

AAOS की इस रिलीज़ में, यहां बताई गई नई सुविधाएं उपलब्ध हैं.

Framework

Jetpack Compose के लिए रोटरी की सुविधा:

  • Android 14 और इसके बाद के वर्शन: AAOS, Jetpack Compose के यूज़र इंटरफ़ेस के लिए, रोटरी कंट्रोलर की बुनियादी सुविधा उपलब्ध कराता है. इसमें कंट्रोलर को घुमाना और उसे थोड़ा हिलाना शामिल है.

  • Android 12, Android 12L, और Android 13: AAOS, Compose यूज़र इंटरफ़ेस (यूआई) के लिए रोटरी कंट्रोल की सुविधा सीमित तौर पर उपलब्ध कराता है. कंट्रोलर रोटेशन की सुविधा, ऐप्लिकेशन के साथ काम करती है. हम सूचनाएं भेजने की सुविधा नहीं देते.

    ज़्यादा जानने के लिए, RotaryPlayground ऐप्लिकेशन में View Compose Activity का डेमो देखें. इस ऐप्लिकेशन का सोर्स कोड, car-apps-dev ब्रांच पर पाएं.

परफ़ॉर्मेंस और सिस्टम की परफ़ॉर्मेंस

  • पिछले उपयोगकर्ताओं के ऐप्लिकेशन बंद करना: उपयोगकर्ता स्विच करने में लगने वाले समय और मेमोरी फ़ुटप्रिंट को कम करने के लिए, सिस्टम उपयोगकर्ता स्विच करने की प्रोसेस के दौरान पिछले उपयोगकर्ता के ऐप्लिकेशन बंद कर देता है.

सिस्टम का अनुभव

स्केल किया जा सकने वाला यूज़र इंटरफ़ेस (यूआई)

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

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

  • स्केलेबल यूज़र इंटरफ़ेस (यूआई) में अपने-आप रीस्टार्ट होने की सुविधा: स्केलेबल यूज़र इंटरफ़ेस (यूआई) पैनल अब ऐप्लिकेशन क्रैश होने की समस्या को आसानी से ठीक कर सकते हैं. इसके लिए, वे खराब ऐप्लिकेशन को फिर से लॉन्च करते हैं. हम यूज़र इंटरफ़ेस (यूआई) पैनल में टास्क के अचानक बंद होने की समस्या को ठीक करने के लिए, टास्क को अपने-आप रीस्टार्ट करने की सुविधा उपलब्ध करा रहे हैं. इसे नए <Restart> एक्सएमएल टैग की मदद से कॉन्फ़िगर किया जा सकता है. इससे रीस्टार्ट करने की नीति और फिर से कोशिश करने की ज़्यादा से ज़्यादा संख्या तय की जा सकती है.

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

    OEM Perfetto ट्रेस, विंडोइंग और Scalable UI लाइब्रेरी में हो रही गतिविधियों के बारे में अतिरिक्त मेटाडेटा रिपोर्टिंग उपलब्ध कराते हैं.

  • पैनल डेकोर के व्यू, थीम में हुए बदलावों के हिसाब से अपने-आप बदल जाते हैं: पैनल की थीम, थीम में हुए बदलावों के हिसाब से अपने-आप बदल जाती है. उदाहरण के लिए, हल्के और गहरे रंग वाले मोड के बीच या SysUI लेवल पर थीम में होने वाले अन्य बदलावों के बीच.

उपयोगकर्ता की डीबगिंग से जुड़ी कमांड और डेवलपर टूलिंग:

  • शेल कमांड, मौजूदा पैनल की स्थिति दिखाती हैं और adb के ज़रिए इवेंट भेजती हैं: पैनल खोलने या बंद करने जैसी विज़ुअल पैनल की स्थितियों को बदलने के लिए, adb कमांड का इस्तेमाल करें.

    शेल कमांड, सिस्टम पर किसी इवेंट को ट्रिगर करती है. उदाहरण के लिए, ऐप्लिकेशन ग्रिड पैनल खुला होने पर उसे बंद करने के लिए, adb shell cmd statusbar carsysui-dispatch-event close_app_grid चलाएं.

  • पैनल की स्थिति को गतिविधि dumpsys में शामिल किया गया है: गतिविधि dumpsys में पैनल की स्थिति शामिल होती है. डंपसिस्टम (=adb शेल कमांड) के साथ पैनल की स्थितियां पाने के लिए, डीबगिंग टूल (adb कमांड) का इस्तेमाल करें.

    जब कोई विज़ुअल ऐक्शन नहीं होता है, तब यह कमांड पैनल की मौजूदा स्थितियां दिखाती है. निर्देश यह है:

    adb shell cmd statusbar carsysui-dump-panelstates
    

OEM लॉगिंग और डेटा ट्रैकिंग

  • यह कुकी, कार के डेटा की सदस्यता से जुड़े इवेंट में लॉगिंग की सुविधा जोड़ती है. डेटा ट्रैकिंग को बेहतर बनाने के लिए, हम ओईएम के लिए, उपयोगकर्ता की कनेक्टिविटी लॉग करने की सुविधा चालू करते हैं.

मुख्य ऐप्लिकेशन

Car Ready Mobile Apps (CaRMA) के लिए, CDD और CTS के नियमों का पालन करने की पुष्टि करने में मदद करने के लिए, हम ऑटोमोटिव एनवायरमेंट में तीसरे पक्ष के ऐप्लिकेशन के साथ काम करने की सुविधा और इस्तेमाल करने में आसानी को बेहतर बनाते हैं. आसानी से नेविगेट करने के सबसे सही तरीके दिखाने के लिए, हम वापस जाने की सुविधा के लिए रेफ़रंस सैंपल जोड़ते हैं.

  • गतिविधि को ब्लॉक करने वाली गतिविधि (एबीए) से जुड़े सुधार: लाइफ़साइकल को बेहतर तरीके से मैनेज करने के लिए, AAOS, OnStop ABA के व्यवहार में सुधार करता है.

  • ऐप्लिकेशन रेंडरिंग के लिए सुरक्षित आयत. कॉन्टेंट दिखने की पुष्टि करने और ओक्लूज़न से बचने के लिए, AAOS, ऐप्लिकेशन के लिए तय की गई डिसप्ले एरिया तय करता है.

  • डीपीआई स्केलिंग: AAOS, डिसप्ले रिज़ॉल्यूशन और देखने की दूरी के आधार पर यूज़र इंटरफ़ेस (यूआई) एलिमेंट को ऑप्टिमाइज़ करता है.

  • हर ऐप्लिकेशन के लिए अलग-अलग सेटिंग: AAOS की मदद से, ऐप्लिकेशन के व्यवहार को कंट्रोल किया जा सकता है. जैसे, ओरिएंटेशन और आसपेक्ट रेशियो.

  • बेहतर कंपैटिबिलिटी: AAOS में Android के मुख्य फ़ंक्शन शामिल हैं. जैसे, DocumentsUI. साथ ही, इसमें तीसरे पक्ष के ऐप्लिकेशन के साथ कंपैटिबिलिटी को बेहतर बनाया गया है.

  • ऐप्लिकेशन के लिए अन्य कंट्रोल: AAOS, उपयोगकर्ताओं को गाड़ी चलाते समय नॉन-मीडिया सेंटर ऑडियो को कंट्रोल करने की सुविधा देता है. खास तौर पर, कम्यूनिकेशन ऐप्लिकेशन से ऑडियो को कंट्रोल किया जा सकता है.

वीएचएएल प्रॉपर्टी

  • प्रॉपर्टी एनम @SystemApi टैग: AAOS, तीसरे पक्ष को उन एनम का ऐक्सेस देता है जिन्हें हाल ही में तीसरे पक्ष के ऐप्लिकेशन के लिए ऐक्सेस किया जा सकता है.

ऑडियो

  • फ़ेड और बैलेंस एपीआई: AAOS, पहले पक्ष (ग्राहक) के ऐप्लिकेशन को बेहतर बनाता है, ताकि वे उपयोगकर्ता की फ़ेड और बैलेंस की मौजूदा सेटिंग को वापस पा सकें. ऑडियो के ये लेवल, इग्निशन साइकल के दौरान हर उपयोगकर्ता के लिए बने रहते हैं. इस अपडेट से, कार के ऑडियो एपीआई में उपयोगकर्ता के कंट्रोल वाली अन्य ऑडियो सेटिंग के साथ समानता मिलती है.

निजता

  • Google की सेवा की शर्तों के हिसाब से ऐप्लिकेशन को बंद करना: उपयोगकर्ता के Google की सेवा की शर्तों को स्वीकार करने तक, ऐप्लिकेशन बंद किए जा सकते हैं. बंद किए गए ऐप्लिकेशन के आइकॉन, ग्रे रंग में दिखते हैं. इससे पता चलता है कि ऐप्लिकेशन इस्तेमाल नहीं किया जा रहा है.

    बंद किए गए ऐप्लिकेशन पर टैप करने से, उपयोगकर्ताओं को Google की सेवा की शर्तें स्वीकार करने के लिए कहा जाता है.

    Android 25Q4 में, यह सुविधा ओईएम के उन अनुभवों के साथ काम करती है जो स्केलेबल यूज़र इंटरफ़ेस (यूआई) का इस्तेमाल करके कॉन्फ़िगर किए गए बैकग्राउंड पैनल पर, Google की सुविधाओं को हमेशा उपलब्ध रखते हैं. उदाहरण के लिए, Google Maps पर की गई किसी गतिविधि को होम स्क्रीन पर सेट किया गया है. यह तब तक धूसर रंग में दिखेगी, जब तक कोई उपयोगकर्ता Google की सेवा की शर्तों को स्वीकार नहीं कर लेता.

अनुपालन

AAOS, Cuttlefish और इंटरनल रेफ़रंस हार्डवेयर पर Android के कंप्लायंस की जांच करता है. इसके लिए, जीएसआई पर ये टेस्ट सुइट इस्तेमाल किए जाते हैं: CTS, CTS-V, ATS, ATS-V, STS, VTS, और CTS on GSI.

नीचे दी गई समस्याओं को छोड़कर, Android 16 कोड (android16-release) या Android 16 की टेस्ट ब्रांच (android16-m1-tests-dev) में किसी भी गड़बड़ी को ठीक करने की ज़रूरत नहीं है.

हम आने वाले समय में, AOSP के रिलीज़ होने वाले वर्शन में, नीति के उल्लंघन से जुड़ी इन समस्याओं को ठीक करने की योजना बना रहे हैं.

  • CtsAppSecurityHostTestCases: RoleSecurityTest#cannotGetSmsRoleHolderForAnotherUser

  • CtsMediaHostTestCases: AudioServiceRebootHostTest#testVolumePersists_AfterReboot

  • CtsPermissionUiTestCases: PermissionTest23#testInteractiveGrant

Android 25Q4 के टेस्ट फ़ेल होने की जानकारी

इस सेक्शन में, Android 25Q4 के लिए टेस्ट केस की सूची दी गई है. ये टेस्ट केस सिर्फ़ Cuttlefish के लिए हैं. जिन टेस्ट में गड़बड़ी आ रही है वे इंटरनल रेफ़रंस हार्डवेयर पर पास हो जाते हैं. हम Cuttlefish और इंटरनल रेफ़रंस हार्डवेयर पर, किसी भी तरह के अलग-अलग टेस्ट केस की पुष्टि करते हैं.

हम टेस्ट के नतीजों में अंतर का पता लगाने के लिए, लगातार 15 बिल्ड के नतीजों का आकलन करते हैं. इस दौरान, टेस्ट के कई ग्रुप फ़ेल हो जाते हैं.

टेस्ट केस गड़बड़ी कितनी बार हुई
CtsWindowManagerBackgroundActivityTestCases 6
CtsJvmtiAttachingHostTestCases 5
CtsViewTestCases 5
CtsStagedInstallHostTestCases 3
CtsUiRenderingTestCases27 2
CtsWindowManagerDeviceActivity 2
CtsAppOpsTestCases 1
CtsNetTestCasesLegacyApi22 1
CtsStatsdAtomHostTestCases 1
CtsUiRenderingTestCases 1