मीडिया को अनुकूलित करना

मीडिया सिस्टम अनुप्रयोगों के एक सूट से संबंधित है (उदाहरण के लिए, डायलर और ऐप लॉन्चर)। ये एप्लिकेशन एओएसपी संरचना में विभिन्न स्तरों पर परिभाषित सामान्य शैलियों और संपत्तियों को साझा करते हैं।

  • framework/base सभी Android आधार शैलियों को यहां परिभाषित किया गया है।
  • packages/services/Car/car_product/overlay इसमें बिल्ड-टाइम ओवरले शामिल हैं जो एंड्रॉइड ऑटोमोटिव ओएस के एओएसपी लुक-एंड-फील का उत्पादन करने के लिए मानक ढांचे/आधार संसाधनों को संशोधित करते हैं। ओईएम इस ओवरले को बाहर करने और अपने स्वयं के उपयोग का विकल्प चुन सकते हैं।
  • packages/apps/Car/libs/car-ui-lib यह पुस्तकालय AAOS घटकों और संसाधनों को परिभाषित करता है जो सिस्टम अनुप्रयोगों और अनुकूलन के लिए डिज़ाइन किए गए अनबंडल अनुप्रयोगों के लिए सामान्य हैं। विवरण के लिए, कार यूआई लाइब्रेरी इंटीग्रेशन गाइड देखें।
  • packages/apps/Car/libs/car_app_common ऑटोमोटिव सिस्टम अनुप्रयोगों के बीच साझा किए गए सामान्य रंग और शैलियाँ। OEM इन तत्वों को अनुकूलित करने के लिए ओवरले का उपयोग कर सकते हैं (ऊपर वर्णित car_product/overlay के समान)।
  • packages/apps/Car/libs/car_media_common मीडिया और अन्य मीडिया UI के बीच साझा किए गए तत्व शामिल हैं। उदाहरण के लिए, होम स्क्रीन मीडिया विजेट।
  • packages/apps/Car/Media. सभी सिस्टम एप्लिकेशन अपने स्वयं के विषय का उपयोग करते हैं, जो कि Theme.CarUi से विस्तारित होता है, जैसा कि car-ui-lib में परिभाषित किया गया है।

एंड्रॉइड ऑटोमोटिव एओएसपी मीडिया की दो प्रस्तुतियां प्रदान करता है।

  • मीडिया यूआई। उपयोगकर्ताओं को साइन इन करने, सामग्री ब्राउज़ करने और विस्तृत प्लेबैक नियंत्रणों का उपयोग करने में सक्षम बनाता है।
  • होम स्क्रीन मीडिया विजेट। होम स्क्रीन पर कोर मीडिया प्लेबैक नियंत्रण सुविधाओं के उपयोग को सक्षम करता है।

मीडिया यूजर इंटरफेस

यह आंकड़ा मीडिया UI की संरचना का वर्णन करता है:

मीडिया यूआई

चित्रा 1. मीडिया यूजर इंटरफेस

UX और UI दिशानिर्देशों के साथ-साथ मीडिया के विभिन्न घटकों की स्थानिक संरचना के बारे में विवरण के लिए, स्थानिक मॉडल देखें।

ऐपबार व्यू: टूलबार

मीडिया यूआई टूलबार एक घटक है जिसे डायलर और रेडियो जैसे अन्य सिस्टम अनुप्रयोगों के साथ साझा किया जाता है। टूलबार को कस्टमाइज़ करने का तरीका जानने के लिए, कार UI लाइब्रेरी इंटीग्रेशन गाइड देखें।

मीडिया अधिकतम कलाकृति आकार

मीडिया ऐप्स को आर्टवर्क के अधिकतम आकार के बारे में सूचित करने के लिए, आप अपने सिस्टम में media_items_bitmap_max_size_px ओवरले कर सकते हैं। ऐसा करने के लिए, मूल संकेत के रूप में EXTRA_MEDIA_ART_SIZE_HINT_PIXELS भेजें। परिणामस्वरूप, आप छवियों को डाउनलोड करते समय बैंडविड्थ की बचत करेंगे। अधिक जानने के लिए, Developer.android.com पर MediaConstants देखें।

खंड ब्राउज़ करें

ब्राउज़ में मुख्य रूप से एक कार UI RecyclerView होता है, जो स्क्रॉलबार स्थिति, तीर और मार्जिन को संभालता है और विभिन्न प्रकार के आइटम ब्राउज़ कर सकता है, जैसे हेडर, ग्रिड आइटम, आइकन ग्रिड आइटम, सूची आइटम और आइकन सूची आइटम।

न्यूनतम प्लेबैक नियंत्रण

जब ब्राउज़ खंड प्रदर्शित किया जा रहा हो, और जब कोई मीडिया आइटम चुना जाता है, तो एक न्यूनतम प्लेबैक नियंत्रण दृश्य प्रदर्शित होता है। निम्नलिखित आंकड़ा इस दृश्य की संरचना को दर्शाता है:

न्यूनतम प्लेबैक नियंत्रण

चित्र 2. न्यूनतम प्लेबैक नियंत्रण

सूची ब्राउज़ करें

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

समर्थित आइटम प्रकार और संबंधित लेआउट निम्नानुसार स्थित हैं:

  • LIST_ITEM ( media_browse_list_item.xml )। आमतौर पर पॉडकास्ट में एपिसोड के लिए उपयोग किया जाता है, जैसे प्लेलिस्ट आइटम और पसंदीदा।
  • ICON_LIST_ITEM ( media_browse_list_icons_item.xml )। श्रेणियों या मेनू विकल्पों के लिए उपयोग किया जाता है, जिसमें मीडिया आइटम के साथ शामिल छवि वास्तविक एल्बम कला नहीं बल्कि एक आइकन है।
  • GRID_ITEM ( media_browse_grid_item.xml )। आमतौर पर गाने या प्लेलिस्ट जैसी बजाने योग्य वस्तुओं के लिए उपयोग किया जाता है।
  • ICON_GRID_ITEM ( media_browse_grid_icons_item.xml )। ICON_LIST_ITEM जैसी श्रेणियों के लिए उपयोग किया जाता है।
  • media_browse_header_item.xml HEADER । मीडिया आइटम को अनुभागों में व्यवस्थित करने के लिए उपयोग किया जाता है।

प्लेबैक स्क्रीन

इस स्क्रीन को प्रदर्शित करने के लिए, न्यूनतम प्लेबैक नियंत्रणों का विस्तार करें:

  • वर्तमान में मीडिया आइटम मेडेटा (शीर्षक और उपशीर्षक सहित) चला रहा है।
  • पूर्ण प्लेबैक नियंत्रण।
  • प्लेबैक कतार (हाल ही में खेले गए या खेलने के लिए अगले आइटम प्रदर्शित करने के लिए प्रयुक्त)।

प्लेबैक स्क्रीन के घटकों की पहचान नीचे दिए गए आंकड़ों में की गई है।

प्लेबैक स्क्रीन

चित्र 3. प्लेबैक स्क्रीन

प्लेबैक स्क्रीन शेष एप्लिकेशन के साथ टूलबार साझा नहीं करती है। इसके बजाय, स्क्रीन के शीर्ष पर मौजूद तत्वों को इस स्क्रीन द्वारा व्यक्तिगत रूप से प्रबंधित किया जाता है।

प्लेबैक नियंत्रण

प्लेबैक स्क्रीन में नियंत्रण पंक्तियों में व्यवस्थित प्लेबैक नियंत्रणों का एक विस्तारित सेट शामिल होता है। द्वितीयक पंक्ति (शीर्ष पर पंक्ति के रूप में नीचे प्रदर्शित) केवल तभी प्रदर्शित होती है जब पहली पंक्ति पर स्थान PlaybackStateCompat#getActions() से मीडिया ऐप द्वारा लौटाए गए सभी कार्यों को प्रदर्शित करने के लिए पर्याप्त नहीं है।

प्लेबैक नियंत्रण

चित्रा 4. प्लेबैक नियंत्रण।

OEM मानक क्रियाओं के चिह्नों को अनुकूलित कर सकते हैं, लेकिन उन्हें कस्टम क्रिया चिह्न प्रस्तुत करना चाहिए क्योंकि वे मीडिया अनुप्रयोगों द्वारा प्रदान किए जाते हैं।

होम स्क्रीन मीडिया विजेट

यह विजेट car-media-common में एक टुकड़े के रूप में लागू किया गया है। इस टुकड़े में ऊपर वर्णित प्लेबैक स्क्रीन का एक छोटा संस्करण शामिल है। सभी समान अनुकूलन नियम और क्षमताएं लागू होती हैं।

होम स्क्रीन मीडिया विजेट

चित्र 5. होम स्क्रीन मीडिया विजेट

ऊपर प्रदर्शित ऐप चयनकर्ता बटन मीडिया स्रोत स्विचिंग उपयोगकर्ता प्रवाह में वर्णित स्विच कार्यक्षमता का उपयोग करता है।

ऐप चयनकर्ता बटन के लिए वर्तमान मीडिया स्रोत आइकन का उपयोग करने के लिए, platform/packages/apps/Car/libs/car-media-common/res/values/bools.xml में परिभाषित use_media_source_logo_for_app_selector ध्वज को ओवरले करें और इसे true पर सेट करें। इस बदलाव के साथ, ऐप टूलबार के विपरीत दिशा में मीडिया सोर्स आइकन छिप जाएगा। अनुकूलन मीडिया सेंटर ऐप और संदर्भ रेडियो ऐप पर भी लागू होता है।

मीडिया ऐप चयन बटन

चित्र 6. मीडिया ऐप चयन बटन

प्ले, पॉज़ और स्टॉप बटन लेआउट

प्ले/पॉज/स्टॉप बटन लेआउट को "अभी चल रहा है" और न्यूनतम प्लेबैक नियंत्रण दृश्य के लिए अनुकूलित किया जा सकता है। दोनों लेआउट को packages/apps/Car/libs/car-media-common/res/layout/ में परिभाषित किया गया है।

बटन लेआउट को कस्टमाइज़ करने के लिए, play_pause_stop_button_layout.xml और minimized_play_pause_stop_button_layout.xml .xml पर बिल्ड-टाइम ओवरले लागू करें।

वर्तमान आइटम को प्ले कतार में हाइलाइट करें

वर्तमान प्ले क्यू आइटम की स्थिति selected पर सेट है, इसलिए इसे राज्य संसाधनों जैसे कि रंग राज्य सूची ( रंग राज्य सूची संसाधन देखें) और राज्य सूची ड्रॉएबल ( ड्राएबल संसाधन देखें) का उपयोग करके अनुकूलित किया जा सकता है। आवश्यक स्टाइल परिवर्तन लागू करने के लिए, आप क्यू आइटम लेआउट ( पैकेज/ऐप्स/कार/मीडिया/रेस/लेआउट/queue_list_item.xml ) को ओवरराइड कर सकते हैं।

आप वर्तमान प्ले क्यू आइटम के आगे एक आइकन भी दिखा सकते हैं:

चित्र 7. वर्तमान आइटम को प्ले कतार में हाइलाइट किया गया