wear protolayout
नया अपडेट | रिलीज़ किया गया जांचा और परखा हुआ वर्शन | रिलीज़ कैंडिडेट | बीटा रिलीज़ | ऐल्फ़ा रिलीज़ |
---|---|---|---|---|
13 नवंबर, 2024 | 1.2.1 | - | - | 1.3.0-alpha04 |
डिपेंडेंसी का एलान करना
wear-protolayout पर डिपेंडेंसी जोड़ने के लिए, आपको अपने प्रोजेक्ट में Google Maven रिपॉज़िटरी जोड़नी होगी. ज़्यादा जानकारी के लिए, Google की Maven रिपॉज़िटरी पढ़ें.
अपने ऐप्लिकेशन या मॉड्यूल के लिए, build.gradle
फ़ाइल में उन आर्टफ़ैक्ट की डिपेंडेंसी जोड़ें जिनकी आपको ज़रूरत है:
Groovy
dependencies { // Use to implement support for Wear ProtoLayout Expressions implementation "androidx.wear.protolayout:protolayout-expression:1.3.0-alpha04" // Use to implement support for Wear ProtoLayout implementation "androidx.wear.protolayout:protolayout:1.3.0-alpha04" // Use to utilize components and layouts with Material design in your ProtoLayout implementation "androidx.wear.protolayout:protolayout-material:1.3.0-alpha04" }
Kotlin
dependencies { // Use to implement support for Wear ProtoLayout Expressions implementation("androidx.wear.protolayout:protolayout-expression:1.3.0-alpha04") // Use to implement support for Wear ProtoLayout implementation("androidx.wear.protolayout:protolayout:1.3.0-alpha04") // Use to utilize components and layouts with Material design in your ProtoLayout implementation("androidx.wear.protolayout:protolayout-material:1.3.0-alpha04") }
डिपेंडेंसी के बारे में ज़्यादा जानने के लिए, बिल्ड डिपेंडेंसी जोड़ना लेख पढ़ें.
सुझाव
आपके सुझाव, शिकायत या राय से हमें Jetpack को बेहतर बनाने में मदद मिलती है. अगर आपको कोई नई समस्या मिलती है या इस लाइब्रेरी को बेहतर बनाने के लिए आपके पास कोई सुझाव है, तो हमें बताएं. नई लाइब्रेरी बनाने से पहले, कृपया इस लाइब्रेरी में मौजूद मौजूदा समस्याओं पर एक नज़र डालें. किसी मौजूदा समस्या पर अपना वोट जोड़ने के लिए, स्टार बटन पर क्लिक करें.
ज़्यादा जानकारी के लिए, समस्या ट्रैकर का दस्तावेज़ देखें.
वर्शन 1.3
वर्शन 1.3.0-alpha04
13 नवंबर, 2024
androidx.wear.protolayout:protolayout-*:1.3.0-alpha04
रिलीज़ हो गया है. वर्शन 1.3.0-alpha04 में ये कमिट शामिल हैं.
नई सुविधाएं
- Material3 शेप को एक क्लास में अपडेट किया गया है. इसमें वे फ़ील्ड होते हैं जिनमें Wear Compose की तरह ही, कोने की असल वैल्यू होती है. (Ied8cd)
- Wear Compose की तरह ही,
ColorScheme
कॉन्सेप्ट को शामिल करने के लिए, Material3 के रंगों को अपडेट किया गया. (If645e) - टेस्टिंग लाइब्रेरी में, आम तौर पर इस्तेमाल होने वाले कई मैचर जोड़ें. (Ie5cec)
वर्शन 1.3.0-alpha03
30 अक्टूबर, 2024
androidx.wear.protolayout:protolayout-*:1.3.0-alpha03
रिलीज़ हो गया है. वर्शन 1.3.0-alpha03 में ये कमिट शामिल हैं.
नई सुविधाएं
- टेस्टिंग लाइब्रेरी में
LayoutElementAssertionsProvider
,LayoutElementAssertion
, औरLayoutElementMatcher
जोड़ना (Id1110)
वर्शन 1.3.0-alpha02
16 अक्टूबर, 2024
androidx.wear.protolayout:protolayout-*:1.3.0-alpha02
रिलीज़ हो गया है. वर्शन 1.3.0-alpha02 में ये कमिट शामिल हैं.
नई सुविधाएं
- Material 3 लाइब्रेरी का शुरुआती वर्शन. इसमें
text
,edgeButton
,buttonGroup
, औरprimaryLayout
कॉम्पोनेंट शामिल हैं.
सुरक्षा से जुड़े सुधार
- इस बदलाव के बाद, androidx protobuf 4.28.2 के हिसाब से कंपाइल करता है, ताकि CVE-2024-7254 को ठीक किया जा सके. जोखिम की आशंका को दूर करने के लिए,
androidx.wear.protolayout:protolayout-proto
औरandroidx.wear.protolayout:protolayout-external-protobuf
के 1.3.0-alpha01 वर्शन की डिपेंडेंसी को 1.3.0-alpha02 पर अपग्रेड करें.
बाहरी योगदान
वर्शन 1.3.0-alpha01
2 अक्टूबर, 2024
androidx.wear.protolayout:protolayout-*:1.3.0-alpha01
रिलीज़ हो गया है. वर्शन 1.3.0-alpha01 में ये कमिट शामिल हैं.
गड़बड़ियां ठीक की गईं
- यह बताया गया है कि Roboto और Roboto Flex फ़ॉन्ट फ़ैमिली के नामों की उपलब्धता, डिवाइस पर निर्भर करती है. (I193be)
- AndroidX टाइल रेंडरर में Roboto Flex फ़ॉन्ट फ़ैमिली चालू की गई. (I08e94)
वर्शन 1.2
वर्शन 1.2.1
16 अक्टूबर, 2024
androidx.wear.protolayout:protolayout-*:1.2.1
रिलीज़ हो गया है. वर्शन 1.2.1 में ये कमिट शामिल हैं.
सुरक्षा से जुड़े सुधार
- इस बदलाव के बाद, androidx protobuf 4.28.2 के हिसाब से कंपाइल करता है, ताकि CVE-2024-7254 को ठीक किया जा सके. जोखिम को कम करने के लिए,
androidx.wear.protolayout:protolayout-proto
औरandroidx.wear.protolayout:protolayout-external-protobuf
के 1.2.0 वर्शन को 1.2.1 वर्शन पर अपग्रेड करें.
वर्शन 1.2.0
7 अगस्त, 2024
androidx.wear.protolayout:protolayout-*:1.2.0
रिलीज़ हो गया है. वर्शन 1.2.0 में ये कमिट शामिल हैं.
1.1.0 के बाद किए गए अहम बदलाव
FontStyle
को अपडेट किया गया है, ताकि वैरिएबल ऐक्सिस के लिए फ़ॉन्ट के अन्य विकल्प उपलब्ध कराए जा सकें. साथ ही, आने वाले समय में उपलब्ध होने वाले Flex फ़ॉन्ट के साथ काम करने के लिए, फ़ॉन्ट चुनने के बेहतर एपीआई का इस्तेमाल किया जा सके.- अन्य बदलाव करने वाले टूल के साथ काम करता है:
- ट्रांसफ़ॉर्मेशन मॉडिफ़ायर, जो ऐनिमेशन के साथ या उसके बिना ट्रांसलेशन, रोटेशन, और स्केलिंग की सुविधा देता है.
- हर कोने की त्रिज्या के लिए अलग-अलग वैल्यू (हॉरिज़ॉन्टल और वर्टिकल) तय करना.
- क्लिक किए जा सकने वाले मॉडिफ़ायर का इस्तेमाल करने वाले किसी भी एलिमेंट के टैप किए जा सकने वाले एरिया को
48dp
x48dp
तक बढ़ाकर, सभी टच टारगेट की ऐक्सेस-योग्यता को बेहतर बनाया गया. setResponsiveContentInsetEnabled
जोड़करPrimaryLayout
औरEdgeContentLayout
को बेहतर बनाया गया है. इससे अलग-अलग स्क्रीन साइज़ पर, इन लेआउट के रिस्पॉन्सिव व्यवहार को बेहतर तरीके से दिखाया जा सकता है. साथ ही, टाइल की एक जैसी बनावट को भी बेहतर बनाया जा सकता है.- Android 14 के नॉन-लिनियर फ़ॉन्ट स्केलिंग के लिए, Material Text की स्केलिंग/नॉन-स्केलिंग को बेहतर बनाया गया है.
- सभी आर्क एलिमेंट पर, दाईं से बाईं ओर के लेआउट की दिशा के लिए बेहतर सहायता.
अन्य बदलाव
- वर्शन 1.1.0 में किए गए बदलावों के बारे में ज़्यादा जानने के लिए, beta01 रिलीज़ नोट देखें.
वर्शन 1.2.0-rc01
24 जुलाई, 2024
androidx.wear.protolayout:protolayout-*:1.2.0-rc01
रिलीज़ हो गया है. वर्शन 1.2.0-rc01 में ये कमिट शामिल हैं.
गड़बड़ियां ठीक की गईं
- हमने स्टैंडर्ड मटीरियल चिप को ठीक कर दिया है, ताकि इसका इस्तेमाल आइकॉन के तौर पर सिर्फ़ तब किया जा सके, जब कोई प्राइमरी या सेकंडरी लेबल न दिया गया हो. (Iceef9)
- लेआउट को आसानी से समझने के लिए, काम के पेज से विज़ुअल शामिल करने के मकसद से, मेटारियल लेआउट के दस्तावेज़ों को अपडेट किया गया है. (I0256a)
वर्शन 1.2.0-beta01
10 जुलाई, 2024
androidx.wear.protolayout:protolayout-*:1.2.0-beta01
रिलीज़ हो गया है. वर्शन 1.2.0-beta01 में ये कमिट शामिल हैं.
नई सुविधाएं
Wear ProtoLayout के 1.2.0-beta01 रिलीज़ से पता चलता है कि लाइब्रेरी के इस रिलीज़ में सभी सुविधाएं मौजूद हैं और एपीआई लॉक है. हालांकि, जिन एपीआई को प्रयोग के तौर पर मार्क किया गया है वे लॉक नहीं हैं. Wear ProtoLayout 1.2 में ये नई सुविधाएं और एपीआई शामिल हैं:
FontStyle
को अपडेट किया गया है, ताकि इसमें अन्य फ़ॉन्ट का इस्तेमाल किया जा सके. जैसे:FontSetting.weight
औरFontSetting.width
जैसे अलग-अलग फ़ॉन्ट वैरिएशन सेटिंग सेट करना- सभी अंकों के लिए एक ही चौड़ाई सेट करना - टेबल के अंक (
FontSetting.tnum
फ़ॉन्ट की सुविधा सेटिंग) - फ़ॉन्ट चुनने के लिए बेहतर एपीआई, ताकि आने वाले समय में फ़्लेक्स फ़ॉन्ट का इस्तेमाल किया जा सके. इसके लिए, इस्तेमाल किए जाने वाले फ़ॉन्ट फ़ैमिली के नाम बताए जाते हैं.
Corner
मॉडिफ़ायर को बड़ा किया गया है, ताकि हरCornerRadius
के लिए अलग-अलग हॉरिज़ॉन्टल और वर्टिकल वैल्यू दी जा सकें. इससे, असिमेट्रिक कोनों वाले एलिमेंट बनाने में मदद मिलती है.Transformation
का नया मॉडिफ़ायर जोड़ा गया, जोLayoutElement
को ट्रांसलेट, रोटेट, और स्केल करने की सुविधा देता है. डाइनैमिक वैल्यू का इस्तेमाल करके, इन ट्रांसफ़ॉर्मेशन को ऐनिमेट किया जा सकता है.- अलग-अलग लेआउट डायरेक्शन (जैसे, LTR और RTL) में बेहतर सहायता के लिए, सभी आर्क एलिमेंट (
Arc
,ArcLine
, औरArcText
) मेंClockwise
,CounterClockwise
, औरNormal
विकल्पों के साथsetArcDirection
जोड़ा गया. Clickable
मॉडिफ़ायर का इस्तेमाल करने वाले किसी भी एलिमेंट के टैप किए जा सकने वाले हिस्से को48dp
x48dp
तक बढ़ाकर, सभी टच टारगेट की सुलभता को बेहतर बनाया गया है.setResponsiveContentInsetEnabled
जोड़करPrimaryLayout
औरEdgeContentLayout
को बेहतर बनाया गया है. इससे अलग-अलग स्क्रीन साइज़ पर, इन लेआउट के रिस्पॉन्सिव व्यवहार को बेहतर तरीके से दिखाया जा सकता है. साथ ही, टाइल की एक जैसी बनावट को भी बेहतर बनाया जा सकता है. इन एपीआई का इस्तेमाल करने के लिए, तुरंत ठीक करने का सुझाव देने के लिए, लिंटर चेतावनी जोड़ी गई है.- Android 14 के नॉन-लिनियर फ़ॉन्ट स्केलिंग के लिए, Material
Text
की स्केलिंग/नॉन-स्केलिंग को बेहतर बनाया गया.
एपीआई में हुए बदलाव
- फ़ॉन्ट फ़ैमिली का डिफ़ॉल्ट नाम (
DEFAULT_SYSTEM_FONT
) हटा दिया गया है, क्योंकिpreferredFontFamilies
एपीआई का इस्तेमाल न करने से यह पता चलता है. (I39dab) FontSetting.width
में पास किया गया पैरामीटर पॉज़िटिव होना चाहिए. (I1266f)
वर्शन 1.2.0-alpha05
26 जून, 2024
androidx.wear.protolayout:protolayout-*:1.2.0-alpha05
रिलीज़ हो गया है. वर्शन 1.2.0-alpha05 में ये कमिट शामिल हैं.
नई सुविधाएं
- टेक्स्ट कॉन्टेंट सेट किया गया है या नहीं, यह देखने के लिए
Material.CompactChip
मेंhasText
तरीका जोड़ें. (I6e8fc)
एपीआई में हुए बदलाव
FontFamily
const को Builder क्लास के बजायFontStyle
में ले जाया गया है. (I06ced)- रेंज एनोटेशन शामिल करने के लिए,
FontSetting.weight
औरFontSetting.width
एपीआई को अपडेट करें. साथ ही, वज़न के पैरामीटर को int में बदलें. (Ia726c)
गड़बड़ियां ठीक की गईं
- Material लाइब्रेरी में मौजूद ऐसे टेक्स्ट जिन्हें स्केल नहीं किया जा सकता, अब Android 14 के नॉन-लिनियर फ़ॉन्ट स्केलिंग के साथ सही तरीके से काम करते हैं. (I6601e)
वर्शन 1.2.0-alpha04
29 मई, 2024
androidx.wear.protolayout:protolayout-*:1.2.0-alpha04
रिलीज़ हो गया है. वर्शन 1.2.0-alpha04 में ये कमिट शामिल हैं.
एपीआई में हुए बदलाव
- अलग-अलग कोनों की त्रिज्या को दो वैल्यू के साथ अलग-अलग बताने के लिए, अलग-अलग कोनों के लिए अलग-अलग त्रिज्या तय करने की सुविधा जोड़ी गई है. (Icbd69)
FontSetting
एपीआई को इनके लिए उपलब्ध कराया गया है:FontStyle
में फ़ॉन्ट फ़ैमिली एपीआई जोड़ा गया है, ताकि यह तय किया जा सके कि किन फ़ॉन्ट फ़ैमिली का इस्तेमाल किया जाना चाहिए. (Iba9f5)- Material के
LayoutDefaults
में, कॉन्टेंट और सेकंडरी लेबल के बीच की जगह की ऊंचाई के लिए, कॉन्स्टेंट का नाम बदला गया है. शुरुआत में, इन कॉन्स्टेंट के नाम में “Edge content” जोड़ा गया था, ताकि येPrimaryLayout
औरEdgeContentLayout
, दोनों पर लागू हो सकें. (I4dc32)
गड़बड़ियां ठीक की गईं
- वैरिएबल फ़ॉन्ट ऐक्सिस के लिए, नाम बदलकर
axisName
सेaxisTag
किया गया. (I02ba3)
वर्शन 1.2.0-alpha03
14 मई, 2024
androidx.wear.protolayout:protolayout-*:1.2.0-alpha03
रिलीज़ हो गया है. वर्शन 1.2.0-alpha03 में ये कमिट शामिल हैं.
नई सुविधाएं
FontStyle
के लिए कस्टम वेट वैल्यू सेट करने के लिए एपीआई जोड़ा गया. (I7390a)
गड़बड़ियां ठीक की गईं
- खाली टारगेट मैप की वजह से,
getTouchDelegateInfo
में हुई गड़बड़ी को ठीक करें. (I2accf)
वर्शन 1.2.0-alpha02
1 मई, 2024
androidx.wear.protolayout:protolayout-*:1.2.0-alpha02
रिलीज़ हो गया है. वर्शन 1.2.0-alpha02 में ये कमिट शामिल हैं.
एपीआई में हुए बदलाव
- हमने क्लिक किए जा सकने वाले हर एलिमेंट पर, रिपल फ़ीडबैक की सुविधा को बंद करने की सुविधा जोड़ी है. (If1ede)
ArcModifiers
से ट्रांसफ़ॉर्मेशन के लिए एपीआई हटा दिया गया है, क्योंकि यह सुविधा काम नहीं करती (Ic0827)ArcDirectionProp
अब बिल्डर को कंस्ट्रक्टर में वैल्यू की ज़रूरत है. (I76ada)PlatformDataValues.Builder.putAll
तरीके से, एकPlatformDataValue
को दूसरे में मर्ज किया जा सकता है. (I50ba3)Text#setIsScalable
का नाम बदलकरText#setScalable
कर दिया गया है. (If920e)- Material Text यह सेट कर सकता है कि स्केलिंग साइज़ (उपयोगकर्ता के फ़ॉन्ट साइज़ में बदलाव होने पर बढ़ता है) का इस्तेमाल करना है या नहीं. (Ibc849)
- हमने कॉन्टेंट के ब्यौरे को
TitleChip
पर सेट करने का विकल्प जोड़ा है. (I5d21f) CompactChip
को सिर्फ़ आइकॉन के साथ सही तरीके से काम करने के लिए ठीक किया गया. साथ ही, इस विकल्प को अनुमति देने के लिए एपीआई को अपडेट किया गया. (I6589e)
गड़बड़ियां ठीक की गईं
- डिवाइस को शुरू करने के दौरान, प्लैटफ़ॉर्म के डुप्लीकेट डेटा से जुड़ी समस्या को ठीक किया गया है. (Iba0fd)
- नोड की लागत वापस पाने के लिए,
DynamicDataNode
में एक नया गटर जोड़ें. डाइनैमिक नोड कोटा हासिल करते समय, इस लागत का इस्तेमाल किया जाता है. फ़िलहाल, तय वैल्यू वाले नोड की लागत 0 होगी. अन्य सभी नोड की लागत 1 होगी. (Ia33e1) NO_OP_QUOTA_MANAGER
से गिनती का लॉजिक हटाएं. (Ib50b8)- हमने एक लिंट नियम जोड़ा है, ताकि
PrimaryLayout
का इस्तेमालsetResponsiveContentInsetEnabled
के बिना करने पर चेतावनी दी जा सके और उसे तुरंत ठीक किया जा सके. (I12025) - डाइनैमिक एक्सप्रेशन नोड की संख्या सीमित होती है. (Iffae8)
वर्शन 1.2.0-alpha01
6 मार्च, 2024
androidx.wear.protolayout:protolayout-*:1.2.0-alpha01
रिलीज़ हो गया है. वर्शन 1.2.0-alpha01 में ये कमिट शामिल हैं.
नई सुविधाएं
ProtoLayout Arc
एलिमेंट में अबArcDirection
(Clockwise
,Counterclockwise
याNormal
) जोड़ा जा सकता है.Arc
,ArcLine
याArcText
में यह व्यवहार जोड़ने से, आरटीएल लेआउट पर इनका व्यवहार ठीक हो जाएगा. (I90699)EdgeContentLayout
को नएsetResponsiveContentInsetEnabled
सेटर के साथ अपडेट किया गया है, ताकि यूज़र इंटरफ़ेस (यूएक्स) के दिशा-निर्देशों के साथ बेहतर अलाइनमेंट किया जा सके. साथ ही, टाइल में प्राइमरी लेबल को सबसे ऊपर तय जगह पर रखकर और लेबल के लिए रिस्पॉन्सिव इनसेट का इस्तेमाल करके, टाइल में एक जैसा अनुभव दिया जा सके. (I60175)- हमने
PrimaryLayout.setResponsiveContentInsetEnabled
जोड़ा है, जो इस लेआउट में प्राइमरी लेबल, सेकंडरी लेबल, और सबसे नीचे मौजूद चिप में रिस्पॉन्सिव इनसेट जोड़ता है. इससे, कॉन्टेंट को स्क्रीन के किनारे से बाहर जाने से रोका जा सकता है. (I0c457) CircularProgressIndicator
से बाहरी मार्जिन हटाने का तरीका जोड़ा गया, ताकि इसका इस्तेमाल छोटे कॉम्पोनेंट के तौर पर किया जा सके. (I55c06)
एपीआई में हुए बदलाव
- टाइल रेंडरर अब डिफ़ॉल्ट रूप से सभी टेक्स्ट एलिमेंट से फ़ॉन्ट पैडिंग हटा देता है. साथ ही, उसे शामिल करने का विकल्प भी नहीं देता. (I3e300)
गड़बड़ियां ठीक की गईं
- टेक्स्ट पर 'बड़े अक्षरों में बदलें', 'अक्षरों के बीच की जगह', और 'बीच में अलाइन करें' सुविधाओं का इस्तेमाल करने पर, टेक्स्ट अलाइनमेंट से जुड़ी समस्या को ठीक किया गया. (I716c7)
- स्किया आर्क ड्रॉइंग से जुड़ी समस्या को हल करने का तरीका जोड़ा गया. (I08f09)
- आरटीएल लेआउट के लिए,
ArcLine
ड्रॉइंग की दिशा ठीक करें. (I6c141)
वर्शन 1.1
वर्शन 1.1.0
7 फ़रवरी, 2024
androidx.wear.protolayout:protolayout-*:1.1.0
रिलीज़ हो गया है. 1.1.0 वर्शन में ये बदलाव शामिल हैं.
1.0.0 के बाद किए गए अहम बदलाव
ArcLine
में ग्रेडिएंट की सुविधा और 360 डिग्री से ज़्यादा की लंबाई को बेहतर तरीके से दिखाने की सुविधा.- तारीख-समय फ़ॉर्मैटिंग, डाइनैमिक डेटा टाइप के लिए अलग-अलग टाइम ज़ोन के साथ काम करती है.
- काटे गए टेक्स्ट को मैनेज करने के लिए, टेक्स्ट के अपने-आप साइज़ बदलने और उसे छोटा करने के बेहतर विकल्प.
- स्पैसर, विकल्प के तौर पर वेट के साथ बड़े किए गए डाइमेंशन के साथ काम करता है.
- सभी
ProtoLayout
एपीआई के लिए, स्कीमा वर्शन की ज़रूरी शर्तों का एनोटेशन. - सुलभता से जुड़ी ज़रूरी शर्तों को पूरा करने के लिए, किसी भी
Clickable
एलिमेंट के टारगेट एरिया को 48 डीपी x 48 डीपी तक बढ़ाया गया. - फ़ॉन्ट पैडिंग की सुविधा डिफ़ॉल्ट रूप से बंद रहती है. यह टेक्स्ट वाले सभी टेक्स्ट एलिमेंट और Material कॉम्पोनेंट के लिए एक ही तरह से काम करती है.
अन्य बदलाव
- वर्शन 1.1.0 में किए गए बदलावों के बारे में ज़्यादा जानने के लिए, beta01 रिलीज़ नोट देखें.
वर्शन 1.1.0-rc01
24 जनवरी, 2024
androidx.wear.protolayout:protolayout-*:1.1.0-rc01
रिलीज़ हो गया है. 1.1.0-rc01 वर्शन में ये बदलाव शामिल हैं.
गड़बड़ियां ठीक की गईं
- अपडेट चालू करने के तुरंत बाद,
PlatformTimeUpdateNotifierImpl
पर सही का निशान दिखता है. (I77145) CircularProgressIndicator
को आरटीएल लेआउट के लिए ठीक कर दिया गया है. अब से, यह सभी मामलों में घड़ी की सुई की दिशा में चलेगा. (I95ee3)- स्किया आर्क ड्रॉइंग से जुड़ी समस्या को हल करने का तरीका जोड़ा गया. (I08f09)
वर्शन 1.1.0-beta01
10 जनवरी, 2024
androidx.wear.protolayout:protolayout-*:1.1.0-beta01
रिलीज़ हो गया है. 1.1.0-beta01 वर्शन में ये बदलाव शामिल हैं.
नई सुविधाएं
Wear ProtoLayout के 1.1.0-beta01 रिलीज़ से पता चलता है कि लाइब्रेरी के इस रिलीज़ में सभी सुविधाएं मौजूद हैं और एपीआई लॉक है. हालांकि, जिन एपीआई को प्रयोग के तौर पर मार्क किया गया है वे लॉक नहीं हैं. Wear ProtoLayout 1.1 में ये नई सुविधाएं और एपीआई शामिल हैं:
ArcLine
में अब ग्रेडिएंट की सुविधा है. इसके लिए,SweepGradient
के साथBrush
जोड़ें. साथ ही, मौजूदाStrokeCap
परShadow
जोड़कर, कैप पर शैडो जोड़ें, ताकि 360 डिग्री से ज़्यादा की लंबाई को बेहतर तरीके से दिखाया जा सके.DynamicInstant
में, टाइमज़ोन के हिसाब से तारीख-समय फ़ॉर्मैट करने की सुविधा है.DynamicInstant
औरDynamicDuration
का इस्तेमाल, स्टेटस या प्लैटफ़ॉर्म डेटा टाइप के तौर पर किया जा सकता है.- टेक्स्ट साइज़ के लिए, अपने-आप साइज़ बदलने की सुविधा. इसकी मदद से,
FontStyle.setSizes
के लिए कई साइज़ सेट किए जा सकते हैं. इसमें टेक्स्ट साइज़, पैरंट के अंदर मौजूद जगह के हिसाब से अपने-आप स्केल हो जाएगा. इसके अलावा, हमनेTEXT_OVERFLOW_ELLIPSIZE
जोड़कर औरTEXT_OVERFLOW_ELLIPSIZE_END
को बंद करके, ओवरफ़्लो होने वाले टेक्स्ट के लिए, एलिप्सिस करने के विकल्पों को बेहतर बनाया है. Spacer
में अब वैकल्पिक वेट के साथ बड़े किए गए डाइमेंशन का इस्तेमाल किया जा सकता है.ExpandedDimensionProp
बनाने के लिए, हमने एक सहायक तरीकाDimensionBuilders.weight
जोड़ा है.Modifier.visible
की मदद से, लेआउट एलिमेंट को डाइनैमिक तौर पर छिपाने और दिखाने की सुविधा. इसमेंBoolProp
में डाइनैमिक वैल्यू शामिल हैं.- सभी
ProtoLayout
एपीआई में अब स्कीमा वर्शन की ज़रूरी शर्तों का एनोटेशन है. साथ ही, नए एपीआई को कॉल करने से पहले, वर्शन की जांच की जा सकती है. - ऐक्सेस-योग्यता से जुड़ी ज़रूरी शर्तों को बेहतर तरीके से पूरा करने के लिए, अब रेंडरर में
Clickable
वाले हर एलिमेंट का टारगेट एरिया कम से कम 48x48 तक बढ़ा दिया गया है. - Material कॉम्पोनेंट और Compose के अन्य इनिशिएटिव के मुताबिक, हमने अब सभी
Text
एलिमेंट पर फ़ॉन्ट पैडिंग को डिफ़ॉल्ट रूप से बंद कर दिया है. इसके अलावा,AndroidTextStyle
और उससे जुड़े सेटर को सार्वजनिक एपीआई से हटा दिया गया है. साथ ही, इन गड़बड़ियों को ठीक किया गया है: EdgeContentLayout
में किनारे के कॉन्टेंट को पोज़िशन करने के लिए सेटर जोड़ा गया, ताकि उसे दूसरे कॉन्टेंट से पहले पोज़िशन किया जा सके.- किसी ऐसी वैल्यू का इस्तेमाल करने पर अपवाद मिलने की समस्या को ठीक किया गया जिसकी पहचान नहीं की जा सकी.
- जब किसी एक्सप्रेशन से अमान्य संख्या वाली वैल्यू (NaN या अनंत) मिलती है या
ArithmeticException
मिलता है, तो उस एक्सप्रेशन के नतीजे को अमान्य कर दें.
एपीआई में हुए बदलाव
SweepGradient
एपीआई में अपडेट, ताकि कन्स्ट्रक्टर में रंग याColorStops
में से किसी एक को स्वीकार किया जा सके. (I6676f)
गड़बड़ियां ठीक की गईं
- ऐर्क एलिमेंट को खींचने की दिशा सेट करने के लिए, प्रतिबंधित एपीआई और रेंडरर की सुविधा जोड़ी गई है. (Idef5a)
- अगर
RoundMode
की वैल्यू नहीं दी गई है, तोFloatToInt32Node
में यह डिफ़ॉल्ट रूप सेFloor
पर सेट हो जाती है. अगर दिया गयाRoundMode
पहचाना नहीं जाता है, तो भी नोड में अपवाद दिखेगा. (I1b2d8)
वर्शन 1.1.0-alpha04
13 दिसंबर, 2023
androidx.wear.protolayout:protolayout-*:1.1.0-alpha04
रिलीज़ हो गया है. 1.1.0-alpha04 वर्शन में ये बदलाव शामिल हैं.
नई सुविधाएं
VersionInfo
क्लास,Comparable
इंटरफ़ेस को लागू नहीं करती. (I8d13c)- रेंडरर अब
TEXT_OVERFLOW_ELLIPSIZE
विकल्प के साथ काम करता है. (I7f085)
एपीआई में हुए बदलाव
- टेक्स्ट ओवरफ़्लो विकल्प
TEXT_OVERFLOW_ELLIPSIZE_END
अब काम नहीं करता. कृपया नए एपीआईTEXT_OVERFLOW_ELLIPSIZE
का इस्तेमाल करें. यह एपीआई, मौजूदा एपीआई की तरह ही काम करता है. (I822d8) - Material के अन्य कॉम्पोनेंट और Compose के इनिशिएटिव के मुताबिक, हमने अब सभी टेक्स्ट एलिमेंट पर फ़ॉन्ट पैडिंग को डिफ़ॉल्ट रूप से बंद कर दिया है. इसके अलावा,
AndroidTextStyle
और उससे जुड़े सेटर को सार्वजनिक एपीआई से हटा दिया गया है. (I79094, Ib0b03, I32959, Iaf7d5, Ifa298, I0a4ae, Ida9d3) Modifier.hidden
कोModifier.visible
(I56902) से बदला गयाFontStyle#setSizes
अबSpProp
आर्ग्युमेंट के बजाय int स्वीकार करता है. (I02b37)
गड़बड़ियां ठीक की गईं
- तय नहीं की गई या पहचानी न जा सकने वाली वैल्यू मिलने पर, अपवाद दिखाएं. (I9d2cf)
DynamicTypeBindingRequest
को फिर से तैयार करना. (I27b57)- जब किसी एक्सप्रेशन से अमान्य संख्या वाली वैल्यू (NaN या अनंत) मिलती है या
ArithmeticException
मिलता है, तो उस एक्सप्रेशन के नतीजे को अमान्य कर दें. (I681ae)
वर्शन 1.1.0-alpha03
29 नवंबर, 2023
androidx.wear.protolayout:protolayout-*:1.1.0-alpha03
रिलीज़ हो गया है. 1.1.0-alpha03 वर्शन में ये बदलाव शामिल हैं.
नई सुविधाएं
- लेआउट एलिमेंट को डाइनैमिक तौर पर छिपाने/दिखाने के लिए, एक्सपेरिमेंट के तौर पर उपलब्ध सुविधा जोड़ी गई (I64a78)
BoolProp
(I2fe96) में डाइनैमिक वैल्यू की सुविधा जोड़नाProtoLayout
एपीआई में स्कीमा वर्शन की ज़रूरी शर्त का एनोटेशन जोड़ना (I0f03c)TextOverflow
में नए विकल्प के साथ एपीआई को एक्सटेंड किया गया है. इससे, तय किए गए पैरंट कंटेनर में टेक्स्ट को एलिप्सिस (बिंदुओं के बीच में टेक्स्ट) के तौर पर दिखाया जा सकता है. ऐसा तब भी किया जा सकता है, जब टेक्स्ट की लाइन की संख्या तय सीमा तक न पहुंची हो, लेकिन टेक्स्ट के लिए ज़रूरत के मुताबिक जगह न हो. (I110a9)- वज़न के साथ
ExpandedDimensionProp
बनाने के लिए, सहायक तरीकाDimensionBuilders.weight
जोड़ा गया. (I4f72b) DynamicInstant
औरDynamicDuration
का इस्तेमाल, स्टेटस या प्लैटफ़ॉर्म डेटा टाइप के तौर पर किया जा सकता है. (I6819f)
एपीआई में हुए बदलाव
DynamicZonedDateTime
को छिपाने और उसके सभी ऑपरेशन कोDyanamicInstant
पर ले जाने के लिए, एपीआई को अपडेट करना (I34b94)- अब स्पैसर में चौड़ाई/ऊंचाई के लिए, बड़ा किया गया डाइमेंशन काम करता है. (Ie7c94)
- रेंडरर में क्लिक टारगेट एरिया एक्सटेंशन की सुविधा जोड़ी गई (I39c79)
वर्शन 1.1.0-alpha02
15 नवंबर, 2023
androidx.wear.protolayout:protolayout-*:1.1.0-alpha02
रिलीज़ हो गया है. 1.1.0-alpha02 वर्शन में ये बदलाव शामिल हैं.
नई सुविधाएं
- एपीआई में
ArcLine
StrokeCap
Shadow
फ़ील्ड जोड़ा गया. (I830ec) - एपीआई को बड़ा किया जा रहा है, ताकि Spacer की चौड़ाई या ऊंचाई को बड़ा किया जा सके. (I757ca)
- हमने एक्सपेरिमेंट के तौर पर एक एपीआई जोड़ा है. इससे, पैरंट एलिमेंट में मौजूद जगह के हिसाब से, टेक्स्ट का साइज़ अपने-आप बदल जाएगा. (Ibbe63)
- क्लिक किए जा सकने वाले आइटम का कम से कम साइज़ (I178e3)
StrokeCap
Shadow
के लिए रेंडरर की सुविधा जोड़ी गई. (I48b17)ArcLine
में स्वीप ग्रेडिएंट के लिए रेंडरर की सुविधा जोड़ें. (I4d5bb)
वर्शन 1.1.0-alpha01
18 अक्टूबर, 2023
androidx.wear.protolayout:protolayout-*:1.1.0-alpha01
रिलीज़ हो गया है. 1.1.0-alpha01 वर्शन में ये बदलाव शामिल हैं.
नई सुविधाएं
Arcline
में ब्रश का विकल्प जोड़ा गया है. यह विकल्पSweepGradient
के साथ भी काम करता है. (Ie7ce3)- ज़ोन के हिसाब से तारीख-समय फ़ॉर्मैट करने की सुविधा जोड़ी गई. (Ibfae0)
- ज़ोन के हिसाब से तारीख-समय फ़ॉर्मैट करने के लिए, ज़रूरी प्रोटो और Java Wrapper जोड़े गए. (I97126)
DynamicDataValue
में सेव की गई वैल्यू को पढ़ने के लिए, गेट्टर जोड़े गए. (Ie6cea)EdgeContentLayout
में किनारे के कॉन्टेंट को पोज़िशन करने के लिए सेटर जोड़ा गया है, ताकि उसे दूसरे कॉन्टेंट से पहले पोज़िशन किया जा सके. (Ie8e8a)
गड़बड़ियां ठीक की गईं
- एक से ज़्यादा बार डेटा सोर्स के रजिस्टरेशन वाला एक्सप्रेशन तुरंत अपडेट न होने की समस्या को ठीक किया गया. (I8e1a8)
- डिफ़रेंस अपडेट के दौरान, रूट एलिमेंट को सेंटर में रखने से जुड़ी गड़बड़ी को ठीक किया गया. (Ie48f7)
- अब लेआउट की पाबंदी की सेट नहीं की गई (या खाली) वैल्यू को अनदेखा नहीं किया जाएगा. (Ibc785)
- लेआउट दिखने और उसके पाइपलाइन नोड के शुरू होने के बीच की देरी कम हो गई है. (I38d4e)
संस्करण 1.0
वर्शन 1.0.0
9 अगस्त, 2023
androidx.wear.protolayout:protolayout-*:1.0.0
रिलीज़ हो गया है. 1.0.0 वर्शन में ये बदलाव शामिल हैं.
1.0.0 के मुख्य फ़ीचर
ProtoLayout लाइब्रेरी में, लेआउट और एक्सप्रेशन बनाने के लिए एपीआई शामिल किए गए हैं. इनका इस्तेमाल, Wear OS के अलग-अलग प्लैटफ़ॉर्म पर किया जा सकता है. उदाहरण के लिए, टाइल लाइब्रेरी इन एपीआई का इस्तेमाल, प्लैटफ़ॉर्म डेटा बाइंडिंग (टाइल डेटा को तेज़ी से अपडेट करने के लिए) और ऐनिमेशन के साथ काम करने के लिए करती है.
वर्शन 1.0.0-rc01
26 जुलाई, 2023
androidx.wear.protolayout:protolayout-*:1.0.0-rc01
रिलीज़ हो गया है. 1.0.0-rc01 वर्शन में ये कमिट शामिल हैं.
- टाइल से
ProtoLayout
पर माइग्रेट करने के लिए, कृपया यहां दिए गए निर्देशों का पालन करें.
एपीआई में हुए बदलाव
- हमने Arc एलिमेंट से
setLayoutConstraintForDynamicAnchorAngle
औरgetLayoutConstraintForDynamicAnchorAngle
तरीके हटा दिए हैं. ये तरीके गलती से जोड़े गए हैं. इनका दिए गए लेआउट पर कोई असर नहीं पड़ा है. (If7d01) - हमने
ProtoLayout
के लेआउट में नेस्ट किए गएLayoutElements
की ज़्यादा से ज़्यादा संख्या को 30 तक सीमित कर दिया है. (I8a74b)
गड़बड़ियां ठीक की गईं
- हमने एक चेक जोड़ा है, ताकि अगर
DynamicColor
कोSpanText
के लिए सेट किया गया है, तो गड़बड़ी का मैसेज दिखाया जा सके. (I0e5bc) - यह साफ़ तौर पर बताया गया है कि
DAILY_CALORIES
डेटा सोर्स की यूनिट केकैल है. (Iaa785)
वर्शन 1.0.0-beta01
21 जून, 2023
androidx.wear.protolayout:protolayout-*:1.0.0-beta01
रिलीज़ हो गया है. 1.0.0-beta01 वर्शन में ये बदलाव शामिल हैं.
नई सुविधाएं
- समय से जुड़े टेस्ट के लिए, घड़ी सेट करने की अनुमति दें. (I05622)
एपीआई में हुए बदलाव
PlatformDataReceiver.onData()
औरStateBuilders.Builder.addKeyToValueMapping
अब असुरक्षित सामान्य वैल्यू के बजाय,DynamicDataKey
सेDynamicDataValue
की टाइप-सेफ़ मैपिंग स्वीकार करते हैं. इसका मतलब है किDynamicDataValue
अबDynamicType
के साथ टाइप किया जाता है.HEART_RATE_ACCURACY_X
कॉन्स्टेंट कोPlatformHealthSources
के रूट में ले जाया गया, ताकि वे Android के अन्य कॉन्स्टेंट की पोज़िशनिंग से मेल खा सकें.HEART_RATE_ACCURACY_X
int constants का इस्तेमाल अब वैल्यू कॉन्स्टेंट के बजाय, सीधेDynamicHeartRateAccuracy.constant()
औरDynamicHeartRateAccuracy.dynamicDataValueOf()
में किया जाता है. (I82ff5)PlatformHealthSources.Constants
क्लास को गलती से इंस्टैंशिएट किया गया था. अब यह समस्या ठीक कर दी गई है. (Icb849)PlatformTimeUpdateNotifier#setReceiver
को अबSupplier
फ़ंक्शन के बजायRunnable
और सूचना देने के लिएExecutor
मिलता है. (I9d938)- हमने
PlatformTimeUpdateNotifier#setReceiver
में पैरामीटर टाइप कोCallable
से बदलकरSupplier
कर दिया है. (I664bf) CompactChip
औरTitleChip
में अब आइकॉन जोड़ा जा सकता है. (I5a01e)
गड़बड़ियां ठीक की गईं
- oneof का इस्तेमाल करने के बजाय, डाइनैमिक फ़ील्ड के साथ प्रॉप मैसेज अपडेट करें (I81739)
- ऐसे ओवरलोड के लिए सेटर लागू करने की सुविधा का फिर से इस्तेमाल करना जिनमें सेटर हैं (Ied70c)
- ओवरलोड वाले सेटर में फ़िंगरप्रिंट को सही तरीके से रिकॉर्ड करना (I86ed2)
वर्शन 1.0.0-alpha11
7 जून, 2023
androidx.wear.protolayout:protolayout-*:1.0.0-alpha11
रिलीज़ हो गया है. 1.0.0-alpha11 वर्शन में ये बदलाव शामिल हैं.
नई सुविधाएं
- हमने
PlatformDataKey
को दिल की धड़कन की सटीक जानकारी के लिए जोड़ा है. (I7f9b8)
एपीआई में हुए बदलाव
StateBuilders#getIdToValueMapping
का नाम बदलकरgetKeyToValueMapping
करें और रिटर्न टाइप कोMap<<AppDataKey<?>,DynamicDataValue>
में बदलें. (Iaa7ae)StateStore
को फ़ाइनल क्लास बनाएं (I408ca)protolayout-expression-pipeline
लाइब्रेरी में,TimeGateway
इंटरफ़ेस कोPlatformTimeUpdateNotifier
से बदल दिया गया है. यह समय डेटा को अपडेट करने के लिए, पसंदीदा फ़्रीक्वेंसी उपलब्ध कराता है. (I60869)PlatformDataProvider
मेंregister
/unregisterForData
का नाम बदलकरset
/clearReceiver
करें (I14b02)- मटीरियल टेक्स्ट में,
getExcludeFontPadding
का नाम बदलकरhasExcludeFontPadding
कर दिया गया है. (Iea01d) - सभी चिप कॉम्पोनेंट में, लेबल को सही तरीके से अलाइन करने के लिए सेटर जोड़ा गया. अब सभी चिप पर, टैप किए जाने की कम से कम संख्या वाला टारगेट लागू है. (I8ae92)
LayoutDefaults#BUTTON_MAX_NUMBER
का नाम बदलकरMAX_BUTTONS
कर दिया गया है. (I84788)DAILY_DISTANCE
का नाम बदलकरDAILY_DISTANCE_M
कर दिया गया है. (I4f758)
गड़बड़ियां ठीक की गईं
- प्रॉपर्टी टाइप के दस्तावेज़ों को अपडेट करें, ताकि यह साफ़ तौर पर बताया जा सके कि स्टैटिक वैल्यू क्यों लागू की जाती है. अगर स्टैटिक वैल्यू नहीं दी गई है, तो डिफ़ॉल्ट वैल्यू डालें. (I155aa)
PlatformDataKey
नेमस्पेस के नाम, Java स्टाइल के हिसाब से होने चाहिए. (I47bda)
वर्शन 1.0.0-alpha10
24 मई, 2023
androidx.wear.protolayout:protolayout-*:1.0.0-alpha10
रिलीज़ हो गया है. 1.0.0-alpha10 वर्शन में ये बदलाव शामिल हैं.
नई सुविधाएं
- ऐप्लिकेशन की पुश की गई स्थिति को ऐक्सेस करने के लिए
AppDataKey
जोड़ें; प्लैटफ़ॉर्म डेटा को ऐक्सेस करने के लिएPlatformDataKey
जोड़ें;StateStore
में नेमस्पेस के लिए सहायता जोड़ें. (I7985e) DynamicBool
के लिएEqual
औरNotEqual
ऑपरेशन की सुविधा. (I6a0c1)
एपीआई में हुए बदलाव
FontStyles
क्लास अब फ़ाइनल है (Iaa2ea)LayoutElementBuilders#FontStyles
का अब इस्तेमाल नहीं किया जा सकता. कृपयाandroidx.wear.protolayout.Typography
का इस्तेमाल करें या अपनाFontStyle
बनाएं. (Ic929b)Action
इंटरफ़ेस सेAction#Builder
नेस्ट किए गए इंटरफ़ेस को छिपाएं.LoadAction
औरLaunchAction
क्लास में, पहले से ही बिल्डर लागू करने की सुविधा उपलब्ध है. (I1d70c)FloatProp
के साथDynamicFloat
का इस्तेमाल करने की अनुमति दें. ध्यान दें किFloatProp
के लिए लेआउट की पाबंदियों की ज़रूरत नहीं होती, क्योंकि इसका इस्तेमाल लेआउट बदलने वाले प्रॉप के तौर पर नहीं किया जाता. (I286ac)LoalAction
औरSetStateAction
कार्रवाइयों को हटा दिया गया है, क्योंकि वे अब तक काम नहीं कर रही थीं. (I5d6a6)- इनलाइन इमेज संसाधनों के लिए ARGB_8888 फ़ॉर्मैट की सुविधा जोड़ी गई. (I8a07c)
StateEntryValue
का नाम बदलकरDynamicDataValue
करें औरDynamicDataKey
(If1c01) का इस्तेमाल करने के लिए, स्टेट एपीआई अपडेट करें- हम
StateStore
में अनुमति वाली एंट्री की संख्या सीमित कर रहे हैं, ताकि यह पक्का किया जा सके किStateStore
के हर इंस्टेंस के लिए, मेमोरी का इस्तेमाल और स्टेटस अपडेट होने में लगने वाला समय अच्छी तरह से कंट्रोल किया जा सके. इसलिए, डेवलपर को यह पक्का करना होगा कि उनके मैप मेंMAX_STATE_ENTRY_COUNT
से ज़्यादा एंट्री न हों. ऐसा न होने पर,StateStore
बनाते या अपडेट करते समय उन्हेंIllegalStateException
दिखेगा. (Ibadb3) OnLoadTrigger
औरOnConditionMetTrigger
क्लास छिपाएं. साथ ही,OnConditionMetTrigger
के लिएsetTrigger
का नाम बदलकरsetCondition
करें. (Ibf629)- परफ़ॉर्मेंस और काम करने के तरीके की वजह से,
ProtoLayout
रेंडररAnimatedVectorDrawable
संसाधनों में सुविधाओं के पूरे सेट के साथ काम नहीं करेंगे. हम उन एपीआई को तब तक एक्सपेरिमेंट के तौर पर मार्क कर रहे हैं, जब तक कि हम काम करने वाले सेट की जानकारी नहीं दे पाते. (Ic6daf) - हर दिन की दूरी, हर दिन की कैलोरी, और हर दिन चढ़े गए फ़्लोर के लिए डाइनैमिक टाइप जोड़े गए. प्लैटफ़ॉर्म के स्वास्थ्य से जुड़े कॉन्टेंट के सोर्स की कुंजियां अब
PlatformHealthSources.Keys
(Ib7637) में मौजूद हैं Easing.cubicBezier
तरीका,CubicBezierEasing.Builder
की जगह ले लेता है. इस बदलाव के बाद,EasingFunction
क्लास हटा दी गई है. साथ ही, उस क्लास के ईज़िंग कॉन्स्टेंट को अब सीधेEasing
इंटरफ़ेस से ऐक्सेस किया जा सकता है. इसके अलावा,setInfiniteRepeatable
कोINFINITE_REPEATABLE_WITH_RESTART
औरINFINITE_REPEATABLE_WITH_REVERSE
(Ib41e7) से बदला गया है- धड़कन की दर और हर दिन चले गए कदमों की जानकारी देने के लिए,
PlatformDataProvider
लागू करें.SensorGateway
इंटरफ़ेस को सार्वजनिक एपीआई से हटा दिया गया है. (I55b84) - जब एक्सप्रेशन पाइपलाइन के नोड को, सेवा देने वाली कंपनी की कुंजी की ज़रूरत हो, तो
PlatformDataProvider
जोड़ें औरStateStore
कोPlatformDataProvider
पर रजिस्टर करने के लिए अपडेट करें. (Ib616a) SensorGateway
अबCloseable
नहीं है, क्योंकि अब इसमें कोई स्टेटस सेव नहीं किया जाता. (I6b4f7)CircularProgressIndicator
में प्रोग्रेस दिखाने के लिए,DynamicFloat
के साथFloatProp
का इस्तेमाल करने की अनुमति दें. यह सुविधा, 1.2 वर्शन के साथ काम करने वाले रेंडरर के लिए उपलब्ध है. अगरstaticValue
एट्रिब्यूट की वैल्यू दी गई है, तो पुराने रेंडरर उस पर फ़ॉलबैक करेंगे. अगर वैल्यू नहीं दी गई है, तो वे 0 पर फ़ॉलबैक करेंगे (I0d91b)MultiButtonLayout
कॉन्स्टेंट कोLayoutDefaults.MultiButtonLayoutDefaults
क्लास में रीफ़ैक्टर किया गया है. इसमें अब लेआउट में बटन की संख्या के हिसाब से, बटन के साइज़ शामिल हैं. (I13973)- Material Text में
DynamicString
के साथStringProp
का इस्तेमाल करने की सुविधा जोड़ी गई है. यह सुविधा, 1.2 वर्शन के साथ काम करने वाले रेंडरर के लिए उपलब्ध है. पुराने रेंडरर, दी गई स्टैटिक वैल्यू पर फ़ॉलबैक करेंगे.Text#getText
के रिटर्न टाइप कोString
सेStringProp
पर अपडेट करें. (I7275b)
वर्शन 1.0.0-alpha09
10 मई, 2023
androidx.wear.protolayout:protolayout-*:1.0.0-alpha09
रिलीज़ हो गया है. 1.0.0-alpha09 वर्शन में ये बदलाव शामिल हैं.
नई सुविधाएं
- हमने एक्सपेरिमेंट के तौर पर, एक्सटेंशन लेआउट एलिमेंट जोड़ा है. ध्यान दें कि इसका इस्तेमाल डिफ़ॉल्ट रूप से नहीं किया जा सकता. साथ ही, इसके लिए रेंडरर एक्सटेंशन की ज़रूरत होती है, जो लेआउट एलिमेंट को समझ सके. (I6581d)
ArcLine
के लिए,StrokeCap
की सहायता जोड़ी गई. (I94951)- शर्त के साथ तुरंत लागू होने वाले ऑपरेशन के लिए सहायता जोड़ी गई. (I489a7)
- शर्त के साथ अवधि तय करने की सुविधा जोड़ी गई. (Iab469)
- सेकंड में अवधि तय करने की सुविधा जोड़ी गई. (Ib5fa1)
एपीआई में हुए बदलाव
enable/disablePlatformSource
कोDynamicTypeEvaluator
से हटा दिया गया है. अपडेट करने की ज़िम्मेदारी कॉल करने वाले की होनी चाहिए. (I78c6d)- बाउंड किए गए डेटा टाइप के साइज़ को सीमित करने की अनुमति दें. (Ie2966)
protolayout-material
में डाइनैमिक कॉन्टेंट के ब्यौरे के लिए सहायता जोड़ें. (I62c8e)- AnimationParameters में, अवधि और देरी के लिए long और
@IntRange
का इस्तेमाल करें. (I388b6)
वर्शन 1.0.0-alpha08
19 अप्रैल, 2023
androidx.wear.protolayout:protolayout-*:1.0.0-alpha08
रिलीज़ हो गया है. 1.0.0-alpha08 वर्शन में ये कमिट शामिल हैं.
नई सुविधाएं
AndroidTextStyle
कोLayoutElementBuilders
में जोड़ दिया गया है. (I8d967)- हमने
ProtoLayout
मटीरियल टेक्स्ट में, फ़ॉन्ट पैडिंग को हटाने की सुविधा जोड़ी है. (I17f5d) - अब इनलाइन इमेज के लिए ARGB_8888 काम करता है. (I18c1e)
DynamicColor
अबonCondition
ऑपरेशन के साथ काम करता है. (I10927)
एपीआई में हुए बदलाव
- रिवर्स ऐनिमेशन के लिए, कस्टम अवधि का इस्तेमाल करने की सुविधा (I3251f)
- हमने
SemanticDescription
मॉडिफ़ायर जोड़ा है. इसके अलावा,ContentDescription
को बांधने की सुविधा नहीं है. (I3f1d) DynamicBool.isFalse()
method को अबDynamicBool.negate()
से बदल दिया गया है औरDynamicBool.isTrue()
को हटा दिया गया है. साथ ही, NaNDynamicFloat
वैल्यू औरDynamicInt32
कोDynamicFloat
तक सीमित करने पर, अब अमान्य डाइनैमिक नतीजा दिखता है. (I6ac1e)- Int और float फ़ॉर्मैटर अब बिल्डर पैटर्न का इस्तेमाल करते हैं. (Ieb213)
गड़बड़ियां ठीक की गईं
- ऐनिमेशन वाले फ़ील्ड से फ़ॉलबैक स्टैटिक वैल्यू हटा दी गई है. (Ifcb01)
DynamicTypeValueReceiver#onPreUpdate
को हटा दिया गया है. (I2dc35)- डाइनैमिक एक्सप्रेशन में स्ट्रिंग की लंबाई अब तय है. (I4c93)
- ज़रूरत पड़ने पर, gradle की डिपेंडेंसी अब
implementation
के बजायapi
पर सही तरीके से सेट हो जाती हैं. (I40503)
वर्शन 1.0.0-alpha07
5 अप्रैल, 2023
androidx.wear.protolayout:protolayout-*:1.0.0-alpha07
रिलीज़ हो गया है. 1.0.0-alpha07 वर्शन में ये बदलाव शामिल हैं.
नई सुविधाएं
StringProp
में डाइनैमिक वैल्यू की सुविधा जोड़ना (I04342)- बाइंड किए जा सकने वाले लेआउट एलिमेंट मार्क करना (Ia110b)
एपीआई में हुए बदलाव
sensorGateway#registerSensorGatewayConsumer
, Consumer में डेटा टाइप को पैरामीटर के तौर पर लेता है, न कि मेथड के तौर पर. (Icf314)ObservableStateStore
का नाम बदलकरStateStore
कर दिया गया है. (Ieb0e2)- ज़्यादा वैकल्पिक आर्ग्युमेंट की अनुमति देने के लिए, कन्स्ट्रक्टर आर्ग्युमेंट के बजाय
DynamicTypeEvaluator.Builder
जोड़ा गया. इनमेंObservableStateStore
भी शामिल है, जो अब डिफ़ॉल्ट रूप से खाली स्टोर पर सेट होता है. (I6f832) DynamicTypeEvaluator
में पैरामीटर का क्रम फिर से तय किया गया. (Ic1ba4)
गड़बड़ियां ठीक की गईं
- प्लैटफ़ॉर्म सेंसर सोर्स से डाउनस्ट्रीम नोड तक सिग्नल सही तरीके से भेजना (I5a922)
वर्शन 1.0.0-alpha06
22 मार्च, 2023
androidx.wear.protolayout:protolayout-*:1.0.0-alpha06
रिलीज़ हो गया है. 1.0.0-alpha06 वर्शन में ये बदलाव शामिल हैं.
नई सुविधाएं
- हमने डाइनैमिक एक्सप्रेशन (Ifd711) में, दिल की धड़कन और रोज़ के कदमों की जानकारी का इस्तेमाल करने के लिए, एक्सपेरिमेंट के तौर पर एक एपीआई जोड़ा है
- हमने ऐनिमेशन के लिए, पीछे और आगे की ओर जाने में लगने वाले समय की सुविधा जोड़ी है. (Ic25f7)
- हमने बॉर्डर और बैकग्राउंड में
DynamicColor
की सुविधा जोड़ी है - हमने
DimensionBuilder
में टाइप के लिए, डाइनैमिक वैल्यू की सुविधा जोड़ी है tiles-material
के लेआउट और कॉम्पोनेंट कोprotolayout-material
में ले जाया जा रहा है
एपीआई में हुए बदलाव
LoadActionListener
कोProtoLayoutViewInstance
में जोड़ दिया गया है. (If7806)
गड़बड़ियां ठीक की गईं
FloatNodesTest
(Id7281) जोड़ा गया- स्ट्रक्चर्ड बिटमैप लोड न होने पर, रेंडरर क्रैश होने की समस्या को ठीक किया गया.
वर्शन 1.0.0-alpha05
8 मार्च, 2023
androidx.wear.protolayout:protolayout-*:1.0.0-alpha05
रिलीज़ हो गया है. 1.0.0-alpha05 वर्शन में ये बदलाव शामिल हैं.
नई सुविधाएं
- हमने
Modifiers
ऑब्जेक्ट में, एक्सपेरिमेंट के तौर पर "कॉन्टेंट अपडेट" ऐनिमेशन जोड़ा है. जब भी लेआउट अपडेट के दौरान, इस मॉडिफ़ायर वाले एलिमेंट या उसके किसी चाइल्ड एलिमेंट में बदलाव होगा, तब यह ऐनिमेशन ट्रिगर होगा. (bd03e5d)
एपीआई में हुए बदलाव
- हमने
Repeatable
मेंforwardRepeatDelayMillis
औरreverseRepeatDelayMillis
को जोड़ा है. हमनेAnimationSpec
मेंdelayMillis
का नाम बदलकरstartDelayMillis
(Ifb266) कर दिया है DynamicTypeEvaluator.bind
के तरीके अब एक एग्ज़ीक्यूटर स्वीकार करते हैं. (I346ab)- हमने
BoundDynamicType
मेंstartEvaluation
तरीका जोड़ा है, ताकि डाइनैमिक टाइप के बाउंड होने के बाद, आकलन को ट्रिगर किया जा सके. (I19908)
गड़बड़ियां ठीक की गईं
- किसी एक एलिमेंट के बाद के ऐनिमेशन के लिए, ऐनिमेशन ऑब्जेक्ट का फिर से इस्तेमाल किया जाएगा. (Ia3be9)
वर्शन 1.0.0-alpha04
22 फ़रवरी, 2023
androidx.wear.protolayout:protolayout-*:1.0.0-alpha04
रिलीज़ हो गया है. 1.0.0-alpha04 वर्शन में ये बदलाव शामिल हैं.
नई सुविधाएं
ObservableStateStore
अब किसी पासकोड को हटाने पर भी, दर्शकों को इसकी सूचना देता है.- हमने
DeviceParameters
में रेंडरर स्कीमा वर्शन और फ़ॉन्ट स्केल जोड़ा है. इसका इस्तेमाल, अलग-अलग वर्शन और फ़ॉन्ट सेटिंग के हिसाब से लेआउट बनाने के लिए किया जा सकता है. - हमने
DynamicInt32
वैल्यू को ऐनिमेट करने की सुविधा जोड़ी है (I05485) - हमने
OnLoad
औरOnConditionalMet
ट्रिगर जोड़े हैं. इनका इस्तेमाल, ट्रिगर के साथ काम करने वाले ऐनिमेशन शुरू करने के लिए किया जा सकता है. - हमने बड़े किए गए डाइमेंशन के लिए लेआउट का वज़न और रैप किए गए डाइमेंशन के लिए कम से कम साइज़ जोड़ा है.
- हमने डाइनैमिक टाइप के तौर पर, 'कितनी देर तक चलेगा' और 'इंस्टैंट' विकल्प जोड़े हैं. इनका इस्तेमाल, डाइनैमिक एक्सप्रेशन में किसी समय या अवधि को दिखाने के लिए किया जा सकता है.
- हमने लेआउट संसाधनों के तौर पर,
AnimatedVectorDrawable
औरSeekableAnimatedVectorDrawable
के लिए सहायता जोड़ी है.
एपीआई में हुए बदलाव
- सेंसर डेटा के लिए, API 29 या इसके बाद का वर्शन ज़रूरी है. (I8099e)
- हमने गतिविधियां लॉन्च करने के लिए, दो
launchAction
हेल्पर तरीके जोड़े हैं.
गड़बड़ियां ठीक की गईं
- टाइल ऐनिमेशन में
set/getSpec
का नाम बदलकरset/getAnimationSpec
करें (I3d74b)
वर्शन 1.0.0-alpha03
8 फ़रवरी, 2023
androidx.wear.protolayout:protolayout-*:1.0.0-alpha03
रिलीज़ हो गया है. 1.0.0-alpha03 वर्शन में ये बदलाव शामिल हैं.
नई सुविधाएं
- हमने protolayout-express लाइब्रेरी में डाइनैमिक टाइप में
toByteArray()
औरfromByteArray()
जोड़े हैं. - हमने protolayout-expression लाइब्रेरी में डाइनैमिक टाइप में
toString()
जोड़ा है. - हमने डाइनैमिक टाइप के लिए, आकलन की सुविधा जोड़ी है. protolayout-expression-pipeline लाइब्रेरी की
DynamicTypeEvaluator
क्लास का इस्तेमाल, पहले से बनाए गए डाइनैमिक टाइप (DynamicString
,DynamicFloat
, …) का आकलन करने और अपडेट की गई वैल्यू पाने के लिए किया जा सकता है - जब ऐनिमेशन नहीं चल सकते (ऐसा इसलिए होता है, क्योंकि एवैल्यूएटर ने उन्हें बंद कर दिया है या चल रहे ऐनिमेशन की संख्या तय सीमा तक पहुंच गई है), तो ऐनिमेशन को बदलने के लिए, ऐनिमेट किए जा सकने वाले नोड पर सेट की गई स्टैटिक वैल्यू का इस्तेमाल किया जाएगा.
वर्शन 1.0.0-alpha02
25 जनवरी, 2023
androidx.wear.protolayout:protolayout:1.0.0-alpha02
, androidx.wear.protolayout:protolayout-expression:1.0.0-alpha02
, और androidx.wear.protolayout:protolayout-proto:1.0.0-alpha02
रिलीज़ हो गए हैं. 1.0.0-alpha02 वर्शन में ये बदलाव शामिल हैं.
नई सुविधाएं
androidx.wear.tiles:tiles
से लेआउट बिल्डर,androidx.wear.protolayout:protolayout
पर माइग्रेट हो रहे हैं.androidx.wear.tiles:tiles
में मौजूद प्रॉपर्टी, अल्फा वर्शन के अगले रिलीज़ में काम नहीं करेंगी.
वर्शन 1.0.0-alpha01
11 जनवरी, 2023
androidx.wear.protolayout:protolayout-expression:1.0.0-alpha01
और androidx.wear.protolayout:protolayout-proto:1.0.0-alpha01
रिलीज़ हो गए हैं. 1.0.0-alpha01 वर्शन में ये कमिट शामिल हैं.
नई सुविधाएं
- इस रिलीज़ में, डाइनैमिक वैरिएबल से एक्सप्रेशन बनाने के लिए एक नई लाइब्रेरी "ProtoLayout Expression" लॉन्च की गई है.