प्रोटोलेआउट पहनें

  
इस लाइब्रेरी की मदद से यूआई लेआउट और बिना यूज़र इंटरफ़ेस वाले एक्सप्रेशन का सेट तय किया जा सकता है, ताकि रिमोट प्लैटफ़ॉर्म पर रेंडर/उनकी जांच की जा सके.
नया अपडेट स्टेबल रिलीज़ रिलीज़ कैंडिडेट बीटा रिलीज़ ऐल्फ़ा रिलीज़
7 अगस्त, 2024 1.2.0 - - -

डिपेंडेंसी तय करना

वियर-प्रोटोलेआउट पर डिपेंडेंसी जोड़ने के लिए, आपको अपने प्रोजेक्ट. Google की Maven रिपॉज़िटरी पढ़ें हमारा वीडियो देखें.

उन आर्टफ़ैक्ट की डिपेंडेंसी जोड़ें जिनकी आपको build.gradle फ़ाइल में ज़रूरत है आपका ऐप्लिकेशन या मॉड्यूल:

ग्रूवी

dependencies {
    // Use to implement support for Wear ProtoLayout Expressions
    implementation "androidx.wear.protolayout:protolayout-expression:1.2.0"

    // Use to implement support for Wear ProtoLayout
    implementation "androidx.wear.protolayout:protolayout:1.2.0"

    // Use to utilize components and layouts with Material design in your ProtoLayout
    implementation "androidx.wear.protolayout:protolayout-material:1.2.0"
}

Kotlin

dependencies {
    // Use to implement support for Wear ProtoLayout Expressions
    implementation("androidx.wear.protolayout:protolayout-expression:1.2.0")

    // Use to implement support for Wear ProtoLayout
    implementation("androidx.wear.protolayout:protolayout:1.2.0")

    // Use to utilize components and layouts with Material design in your ProtoLayout
    implementation("androidx.wear.protolayout:protolayout-material:1.2.0")
}

डिपेंडेंसी के बारे में ज़्यादा जानकारी के लिए, बिल्ड डिपेंडेंसी जोड़ना लेख पढ़ें.

सुझाव

आपके सुझाव, शिकायत या राय से Jetpack को बेहतर बनाने में मदद मिलती है. अगर आपको नई समस्याओं का पता चलता है या आपको इस लाइब्रेरी को बेहतर बनाने के लिए आइडिया मिल सकते हैं. कृपया, इस मौजूदा समस्याएं इस लाइब्रेरी में जोड़ें. किसी मौजूदा समस्या के लिए अपना वोट दें. इसके लिए ये तरीके अपनाएं: स्टार बटन पर क्लिक करके ऐसा किया जा सकता है.

नई समस्या जोड़ें

समस्या को ट्रैक करने वाले टूल से जुड़ा दस्तावेज़ देखें हमारा वीडियो देखें.

वर्शन 1.2

वर्शन 1.2.0

7 अगस्त, 2024

androidx.wear.protolayout:protolayout-*:1.2.0 रिलीज़ हो गया है. वर्शन 1.2.0 में शामिल है. इन बातों पर ध्यान दिया जाता है.

1.1.0 के बाद से हुए अहम बदलाव

  • FontStyle को अपडेट किया गया है, ताकि आने वाले Flex फ़ॉन्ट के साथ काम करने के लिए, यह वैरिएबल ऐक्सिस और बेहतर फ़ॉन्ट चुनने वाले एपीआई के साथ काम करता हो.
  • अतिरिक्त मॉडिफ़ायर के लिए सहायता:
    • ट्रांसफ़ॉर्मेशन मॉडिफ़ायर, ऐनिमेशन के साथ या उसके बिना अनुवाद, रोटेशन, और स्केलिंग की सुविधा देता है.
    • हर कोने के रेडियस के लिए अलग-अलग वैल्यू (हॉरिज़ॉन्टल और वर्टिकल) तय करके.
  • क्लिक किए जा सकने वाले मॉडिफ़ायर का इस्तेमाल करने वाले किसी भी एलिमेंट के टैप किए जा सकने वाले हिस्से को बढ़ाकर, सभी टच टारगेट (स्क्रीन के वे हिस्से जहां छूने पर कोई कार्रवाई होती है) की सुलभता को बेहतर बनाया गया है. इसे 48dp तक कम से कम 48dp तक सेट किया जा सकता है.
  • setResponsiveContentInsetEnabled को जोड़कर PrimaryLayout और EdgeContentLayout को बेहतर बनाया गया है. इससे अलग-अलग स्क्रीन साइज़ पर, इन लेआउट को बेहतर तरीके से इस्तेमाल किया जा सकता है और टाइल की परफ़ॉर्मेंस को बेहतर किया जा सकता है.
  • Android 14 के नॉन-लीनियर फ़ॉन्ट स्केलिंग के लिए, मटीरियल टेक्स्ट की स्केलिंग/नॉन-स्केलिंग को बेहतर किया गया है.
  • सभी चाप तत्वों पर RTL लेआउट दिशा के लिए बेहतर समर्थन.

अन्य बदलाव

वर्शन 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 फ़ॉन्ट सुविधा की सेटिंग)
    • आने वाले फ़्लेक्स फ़ॉन्ट को सपोर्ट करने के लिए, फ़ॉन्ट चुनने के एपीआई को बेहतर बनाया गया है. इसके लिए, फ़ॉन्ट फ़ैमिली के लिए पसंदीदा नाम तय किए गए हैं.
  • हर CornerRadius के लिए अलग-अलग हॉरिज़ॉन्टल और वर्टिकल वैल्यू तय करने के लिए, Corner मॉडिफ़ायर बढ़ाया गया, ताकि एसिमेट्रिक कोनों वाले एलिमेंट को अनुमति दी जा सके.
  • LayoutElement का अनुवाद, रोटेशन और स्केलिंग ऑफ़र करने वाला एक नया Transformation मॉडिफ़ायर जोड़ा गया. डाइनैमिक वैल्यू का इस्तेमाल करके, इन बदलावों को ऐनिमेट किया जा सकता है.
  • अलग-अलग लेआउट निर्देशों (जैसे कि एलटीआर और आरटीएल) में बेहतर सहायता के लिए, सभी आर्क एलिमेंट (Arc, ArcLine, और ArcText) में Clockwise, CounterClockwise, और Normal के साथ setArcDirection को जोड़ा गया.
  • Clickable मॉडिफ़ायर का इस्तेमाल करने वाले किसी भी एलिमेंट के टैप किए जा सकने वाले हिस्से को 48dp तक कम से कम 48dp तक सेट करें, ताकि सभी टच टारगेट (स्क्रीन के वे हिस्से जहां छूने पर कोई कार्रवाई होती है) तक आसानी से पहुंचा जा सके.
  • setResponsiveContentInsetEnabled को जोड़कर PrimaryLayout और EdgeContentLayout को बेहतर बनाया गया है. इससे अलग-अलग स्क्रीन साइज़ पर, इन लेआउट को बेहतर तरीके से इस्तेमाल किया जा सकता है और टाइल की परफ़ॉर्मेंस को बेहतर किया जा सकता है. इन एपीआई के इस्तेमाल का सुझाव देने के लिए, लिंटर चेतावनी जोड़ी गई. इससे यह पता चलेगा कि इन एपीआई का इस्तेमाल तुरंत किया जा सकता है या नहीं.
  • Android 14 के नॉन-लीनियर फ़ॉन्ट स्केलिंग के लिए, मटीरियल Text की बेहतर स्केलिंग/नॉन-स्केलिंग.

एपीआई में किए गए बदलाव

  • preferredFontFamilies एपीआई का इस्तेमाल न करने की वजह से, डिफ़ॉल्ट फ़ॉन्ट फ़ैमिली का नाम (DEFAULT_SYSTEM_FONT) हटा दिया गया है. (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 कॉन्स को उसकी Builder क्लास के बजाय FontStyle में ले जाया गया. (I06 कंपनियों)
  • रेंज एनोटेशन को शामिल करने और वज़न के पैरामीटर को पूर्णांक में बदलने के लिए, FontSetting.weight और FontSetting.width एपीआई को अपडेट करें. (Ia726c)

गड़बड़ियां ठीक की गईं

  • Material Library में, बड़े न किए जा सकने वाले टेक्स्ट, अब Android 14 की नॉन-लीनियर फ़ॉन्ट स्केलिंग के साथ ठीक से काम करते हैं. (I6601e)

वर्शन 1.2.0-alpha04

29 मई, 2024

androidx.wear.protolayout:protolayout-*:1.2.0-alpha04 रिलीज़ हो गया है. वर्शन 1.2.0-alpha04 में ये कमिट मौजूद हैं.

एपीआई में किए गए बदलाव

  • हर कोने के रेडियस को अलग-अलग बताने के लिए, एसिमेट्रिकल कॉर्नर एपीआई जोड़ा गया है. इसके लिए, दो वैल्यू इस्तेमाल की गई हैं. (Icbd69)
  • इसे शामिल करने के लिए, FontSetting एपीआई को बढ़ाया गया:
    • फ़ॉन्ट सुविधा की सेटिंग का इस्तेमाल करना होगा, जैसे कि फ़ॉन्ट को टेबल के तौर पर सेट करना. (If12b7)
    • फ़ॉन्ट के वैरिएशन की सेटिंग, जैसे कि वैरिएबल फ़ॉन्ट के लिए कस्टम चौड़ाई सेट करना. (I2b36d)
  • FontStyle में फ़ॉन्ट फ़ैमिली एपीआई जोड़ा गया, ताकि यह तय किया जा सके कि फ़ॉन्ट फ़ैमिली का इस्तेमाल करने के लिए ऑर्डर की कौनसी सूची इस्तेमाल की जानी चाहिए. (Iba9f5)
  • मटीरियल के LayoutDefaults में कॉन्टेंट और सेकंडरी लेबल के बीच की जगह की ऊंचाई के लिए, एक जैसे कॉन्सटेंट का नाम बदला गया जिन्हें पहले “एज कॉन्टेंट” से शुरू किया गया था. ऐसा इसलिए किया गया, ताकि सामान्य वैल्यू बनाई जा सके, क्योंकि इन्हें 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)
  • मटीरियल टेक्स्ट सेट कर सकता है कि स्केलेबल साइज़ का इस्तेमाल करना है या नहीं (उपयोगकर्ता का फ़ॉन्ट साइज़ बदलने पर यह बढ़ता है) या नहीं. (Ibc849)
  • हमने TitleChip में वीडियो का ब्यौरा सेट करने का विकल्प जोड़ा है. (I5d21f)
  • सिर्फ़ आइकॉन के साथ ठीक से काम करने के लिए, CompactChip को ठीक किया गया. साथ ही, इस विकल्प को अनुमति देने के लिए एपीआई को अपडेट किया गया. (I6589e)

गड़बड़ियां ठीक की गईं

  • शुरू करने के दौरान, संभावित डुप्लीकेट प्लैटफ़ॉर्म डेटा की समस्या ठीक की गई. (Iba0fd)
  • नोड लागत फिर से पाने के लिए, DynamicDataNode को एक नया गैटर पेश करें. डाइनैमिक नोड कोटा हासिल करने के दौरान लागत का इस्तेमाल किया जाता है. फ़िलहाल, तय वैल्यू वाले नोड की लागत 0 होगी और बाकी सभी नोड की लागत 1 होगी. (Ia33e1)
  • NO_OP_QUOTA_MANAGER से गिनती वाला लॉजिक हटाएं. (Ib50b8)
  • हमने setResponsiveContentInsetEnabled के बिना PrimaryLayout का इस्तेमाल किए जाने पर चेतावनी की रिपोर्ट करने और इसे तुरंत ठीक करने के लिए एक लिंट नियम जोड़ा है. (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)
  • RTL लेआउट के लिए, 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 dp x 48 dp तक बढ़ाया गया.
  • फ़ॉन्ट पैडिंग डिफ़ॉल्ट रूप से बंद होता है. यह टेक्स्ट वाले सभी एलिमेंट और मटीरियल कॉम्पोनेंट में सिर्फ़ एक ही काम करता है.

अन्य बदलाव

वर्शन 1.1.0-rc01

24 जनवरी, 2024

androidx.wear.protolayout:protolayout-*:1.1.0-rc01 रिलीज़ हो गया है. वर्शन 1.1.0-rc01 में ये कमिट शामिल हैं.

गड़बड़ियां ठीक की गईं

  • अपडेट चालू करने के बाद, PlatformTimeUpdateNotifierImpl तुरंत टिक जाता है. (I77145)
  • CircularProgressIndicator को RTL लेआउट के लिए ठीक कर दिया गया है. अब से, सभी मामलों में यह घड़ी की सुई की दिशा में चलेगा. (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 जोड़कर ग्रेडिएंट का इस्तेमाल किया जा सकता है और उसकी लंबाई 360 डिग्री से ज़्यादा दिखाने के लिए कैप पर परछाई डाला जा सकता है. ऐसा करने के लिए मौजूदा StrokeCap पर Shadow जोड़ें.
  • 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 देता है.

एपीआई में किए गए बदलाव

  • कंस्ट्रक्टर में रंगों या ColorStops को स्वीकार करने की अनुमति देने के लिए, SweepGradient एपीआई को अपडेट किया गया. (I6676f)

गड़बड़ियां ठीक की गईं

  • आर्क एलिमेंट को ड्रॉ करने की दिशा सेट करने के लिए, प्रतिबंधित एपीआई और रेंडरर की सुविधा जोड़ना. (Idef5a)
  • सेट न होने पर, FloatToInt32Node में RoundMode की वैल्यू 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 के बजाय पूर्णांक स्वीकार करता है. (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 API (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)
  • एपीआई को बढ़ाया जा रहा है, ताकि बड़ा करने के लिए स्पेसर की चौड़ाई या ऊंचाई बताई जा सके. (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)
  • ज़ोन्ड डेट-टाइम फ़ॉर्मैटिंग के लिए, प्रोटो और जावा रैपर जोड़ना ज़रूरी है. (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 प्लैटफ़ॉर्म पर किया जा सकता है. उदाहरण के लिए, Tiles लाइब्रेरी प्लैटफ़ॉर्म डेटा बाइंडिंग (तेज़ टाइल डेटा अपडेट के लिए) और ऐनिमेशन के साथ काम करने के लिए इन एपीआई का इस्तेमाल करती है.

वर्शन 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 की डेटा सोर्स यूनिट की वैल्यू kcal है. (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 की मदद से टाइप किया गया है. अन्य Android कॉन्सटेंट पोज़िशनिंग से मेल खाने के लिए, HEART_RATE_ACCURACY_X कॉन्सटेंट को PlatformHealthSources के रूट में ले जाया गया. HEART_RATE_ACCURACY_X पूर्णांक कॉन्सटेंट को वैल्यू कॉन्स्टेंट के बजाय, सीधे DynamicHeartRateAccuracy.constant() और DynamicHeartRateAccuracy.dynamicDataValueOf() में इस्तेमाल किया जाता है. (I82ff5)
  • PlatformHealthSources.Constants क्लास को गलती से इंस्टैंशल किया जा सकता था. अब यह समस्या ठीक कर दी गई है. (Icb849)
  • PlatformTimeUpdateNotifier#setReceiver को अब Supplier फ़ंक्शन के बजाय Runnable और सूचना देने के लिए Executor मिलेगा. (I9d938)
  • हमने PlatformTimeUpdateNotifier#setReceiver में पैरामीटर टाइप को Callable से बदलकर Supplier कर दिया है. (I664bf)
  • CompactChip और TitleChip अब इसमें आइकॉन जोड़ने की सुविधा देते हैं. (I5a01e)

गड़बड़ियां ठीक की गईं

  • इसके बजाय, किसी एक टेंप्लेट का इस्तेमाल करने के लिए, डाइनैमिक फ़ील्ड वाले प्रॉप मैसेज को अपडेट करें (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)

गड़बड़ियां ठीक की गईं

  • स्टैटिक वैल्यू लागू होने की वजह बताने के लिए, Prop टाइप के दस्तावेज़ों को अपडेट करें. अगर स्टैटिक वैल्यू नहीं दी गई थी, तो इस्तेमाल की जाने वाली डिफ़ॉल्ट वैल्यू बताएं. (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 नेस्ट किया हुआ इंटरफ़ेस छिपाएं. 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) से कम हैं
  • CubicBezierEasing.Builder की जगह, Easing.cubicBezier तरीका इस्तेमाल किया जा रहा है. इसके साथ ही, EasingFunction क्लास को हटा दिया गया है और उस क्लास के ईज़िंग कॉन्सटेंट को अब Easing इंटरफ़ेस से सीधे ऐक्सेस किया जा सकता है. इसके अलावा, setInfiniteRepeatable को INFINITE_REPEATABLE_WITH_RESTART और INFINITE_REPEATABLE_WITH_REVERSE (Ib41e7) से बदल दिया गया है
  • धड़कन की दर और हर दिन चले गए कदमों की जानकारी देने के लिए, PlatformDataProvider लागू करें. SensorGateway इंटरफ़ेस को सार्वजनिक एपीआई से हटाया गया. (I55b84)
  • PlatformDataProvider जोड़ें और PlatformDataProvider में रजिस्टर करने के लिए, StateStore को अपडेट करें. ऐसा तब करें, जब कंपनी की काम करने वाली कुंजी, एक्सप्रेशन पाइपलाइन से नोड के ज़रिए ज़रूरी हो. (Ib616a)
  • SensorGateway अब Closeable नहीं है, क्योंकि यह अब किसी स्थिति में नहीं है. (I6b4f7)
  • CircularProgressIndicator में प्रोग्रेस के लिए, DynamicFloat के साथ FloatProp का इस्तेमाल करने की अनुमति दें. यह उन रेंडरर के लिए काम करता है जो वर्शन 1.2 पर काम करते हैं. अगर पुराने रेंडरर दिए गए हों, तो वे staticValue पर वापस आ जाएंगे. अगर ऐसा नहीं है, तो वे 0 (I0d91b) पर वापस आ जाएंगे
  • MultiButtonLayout कॉन्सटेंट को LayoutDefaults.MultiButtonLayoutDefaults क्लास में फिर से शामिल किया गया है. इसमें, अब बटन के साइज़ के लिए उन्हें शामिल किया गया है. ऐसा लेआउट में मौजूद बटन की संख्या के आधार पर किया गया है. (I13973)
  • मटीरियल टेक्स्ट में 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)

एपीआई में किए गए बदलाव

  • DynamicTypeEvaluator से enable/disablePlatformSource तरीके हटा दिए गए हैं. कॉलर को अपडेट के लिए ज़िम्मेदार होना चाहिए. (I78c6d)
  • बाउंड डेटा टाइप के साइज़ की सीमा तय करने की अनुमति दें. (Ie2966)
  • protolayout-material में कॉन्टेंट की डाइनैमिक तरीके से जानकारी देने के लिए सहायता जोड़ें. (I62c8e)
  • ऐनिमेशन पैरामीटर में, अवधि और देरी के लिए लंबी और @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() वाले तरीके को अब DynamicBool.negate() से बदल दिया गया है और DynamicBool.isTrue() को हटा दिया गया है. इसके अलावा, NaN DynamicFloat वैल्यू और DynamicInt32 को DynamicFloat तक सीमित करने से, अब अमान्य डाइनैमिक नतीजा जनरेट होगा. (I6ac1e)
  • Int और फ़्लोट फ़ॉर्मैट करने वाले टूल अब Builder पैटर्न का इस्तेमाल करते हैं. (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, उपभोक्ता में डेटा टाइप को पैरामीटर के तौर पर इस्तेमाल करने के बजाय, डेटा टाइप को पैरामीटर के तौर पर इस्तेमाल करता है. (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 में जोड़ दिया गया है. (इफ़7806)

गड़बड़ियां ठीक की गईं

  • FloatNodesTest (Id7281) जोड़ा गया
  • स्ट्रक्चर्ड बिट मैप लोड न कर पाने पर, रेंडरर क्रैश होने की समस्या ठीक करें.

वर्शन 1.0.0-alpha05

8 मार्च, 2023

androidx.wear.protolayout:protolayout-*:1.0.0-alpha05 रिलीज़ हो गया है. वर्शन 1.0.0-alpha05 में ये कमियां हैं.

नई सुविधाएं

  • हमने एक्सपेरिमेंट के तौर पर एक "कॉन्टेंट अपडेट" जोड़ा है ऐनिमेशन को Modifiers ऑब्जेक्ट पर ले जाएं. यह ऐनिमेशन तब ट्रिगर होगा, जब लेआउट अपडेट के दौरान एलिमेंट (इस मॉडिफ़ायर के साथ) या इसके किसी चाइल्ड में बदलाव होगा. (bd03e5d)

एपीआई में किए गए बदलाव

  • हमने forwardRepeatDelayMillis और reverseRepeatDelayMillis को Repeatable में जोड़ा है. हमने 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 के लिए, लेआउट संसाधनों के तौर पर सहायता जोड़ी है.

एपीआई में किए गए बदलाव

  • सेंसर डेटा को ऐक्सेस करने के लिए, एपीआई लेवल 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 में ये कमियां हैं.

नई सुविधाएं

  • हमने प्रोटोलेआउट-एक्सप्रेस लाइब्रेरी में, डाइनैमिक टाइप में toByteArray() और fromByteArray() को जोड़ दिया है.
  • हमने प्रोटोलेआउट-एक्सप्रेशन लाइब्रेरी में डाइनैमिक टाइप में toString() को जोड़ा है.
  • हमने डाइनैमिक टाइप के लिए, आकलन करने की सहायता जोड़ी है. पहले से बनाए गए डाइनैमिक टाइप (DynamicString, DynamicFloat, ...) का आकलन करने और अपडेट की गई वैल्यू पाने के लिए, Protolayout-expression-pilline लाइब्रेरी की DynamicTypeEvaluator क्लास का इस्तेमाल किया जा सकता है
  • अगर ऐनिमेशन चलाए नहीं जा सकते (इसकी वजह यह है कि आकलन करने वाले ने उन्हें बंद कर दिया है या चल रहे ऐनिमेशन की संख्या, तय सीमा तक पहुंच चुकी है), तो ऐनिमेशन की जगह, ऐनिमेट किए जा सकने वाले नोड पर सेट की गई स्टैटिक वैल्यू का इस्तेमाल किया जाएगा.

वर्शन 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 एक्सप्रेशन" पेश की गई है का इस्तेमाल किया जाता है.