आज Sola का एक नया अपडेट। दो फिक्स: Samsung Galaxy A06 (और छोटी स्क्रीन वाले अन्य एंट्री-लेवल Android डिवाइस) पर एक दुर्लभ लेकिन ब्लॉकिंग स्टार्टअप क्रैश, और विजेट पोज़िशनिंग सब-मेन्यू की एक डिस्प्ले गड़बड़ी जो स्क्रीन के नीचे कटी हुई दिख सकती थी।
1.0.10 — Samsung Galaxy A06 पर स्टार्टअप क्रैश
लक्षण
Samsung Galaxy A06 (Android 16) पर एक यूज़र को Sola के स्टार्टअप के दौरान क्रैश का सामना करना पड़ा: ऐप खुलते ही तुरंत बंद हो जाता था, होम स्क्रीन तक पहुंचने का मौका भी नहीं मिलता था। क्रैश रिपोर्ट पूरी ट्रेस के साथ Google Play Console के ज़रिए मिली, जिससे कारण को सटीक रूप से पहचाना जा सका।
कारण
Samsung Galaxy A06 एक एंट्री-लेवल डिवाइस है जिसमें 720×1600 स्क्रीन और एक असामान्य डिस्प्ले डेंसिटी (260 dpi) है। ये स्पेसिफिकेशन उन Pixel डिवाइसों से अलग हैं जिन पर Sola का ज़्यादातर टेस्ट हुआ है।
कुछ कॉन्फ़िगरेशन में, « एक नज़र में » विजेट (होम स्क्रीन के ऊपर, जो समय, मौसम और अगला इवेंट दिखाता है) एक क्षणिक फ्रेम पर अपनी खुद की हाइट को शून्य माप सकता था। यह शून्य वैल्यू फिर मेमोराइज़ की जाती थी और नीचे मौजूद आइकन ग्रिड तक पहुंचाई जाती थी, जिसकी सेल हाइट भी शून्य हो जाती थी। Jetpack Compose का LazyVerticalGrid कॉम्पोनेंट फिर इस माप को स्वीकार नहीं करता और एक एक्सेप्शन थ्रो करता है, जिससे ऐप क्रैश हो जाता है।
फिक्स
दो डिफेंसिव गार्ड जोड़े गए हैं:
- « एक नज़र में » विजेट अब अपनी हाइट मेमोराइज़ करने से पहले शून्य (या नेगेटिव) मापों को नज़रअंदाज़ करता है। वैल्यू आखिरी वैलिड माप पर बनी रहती है।
- होम ग्रिड अब अपनी सेल हाइट को कम से कम एक आइकन के बराबर साइज़ पर कोर्स करता है। यहां तक कि उस डीजेनरेट केस में भी जहां उपलब्ध हाइट इनवैलिड हो, ग्रिड अब एक्सेप्शन ट्रिगर नहीं कर सकता।
यह फिक्स Galaxy A06 के सटीक स्पेसिफिकेशन (720×1600, 260 dpi, Android 16) को रिप्रोड्यूस करने वाले एक एमुलेटर पर, साथ ही Pixel 4a (Android 10), Pixel Tablet (Android 14) और Pixel 8 Pro (Android 16) पर वैलिडेट किया गया है। न कोई क्रैश, न कोई दिखने वाली रिग्रेशन।
स्क्रीन के नीचे कटा हुआ दिखने वाला विजेट पोज़िशनिंग सब-मेन्यू
लक्षण
जब कोई विजेट स्क्रीन के निचले किनारे के पास रखा जाता था, तो उस पर लंबे समय तक दबाने से कॉन्टेक्स्ट मेन्यू (« कॉन्फ़िगर करें », « पोज़िशन करें », « हटाएं ») दिखता था और पूरी तरह विज़िबल बने रहने के लिए अपने-आप शिफ्ट हो जाता था। सही व्यवहार। लेकिन अगर यूज़र इसके बाद फाइन पोज़िशनिंग सब-मेन्यू खोलने के लिए « पोज़िशन करें » पर टैप करता, तो वह रीपोज़िशन नहीं होता था: चाहे कुछ भी हो, वह हमेशा विजेट के नीचे दिखता, और इसलिए स्क्रीन के नीचे कटा हुआ रह जाता।
फिक्स
पैरेंट मेन्यू जैसा ही ऑटोमैटिक रीपोज़िशनिंग लॉजिक अब पोज़िशनिंग सब-मेन्यू पर भी लागू किया गया है। अगर जगह हो तो यह विजेट के नीचे दिखता है, वरना ऊपर, और अगर वह भी न हो सके तो स्क्रीन के निचले किनारे से सट जाता है। पैनल की चौड़ाई भी विजेट पर सेंटर की जाती है, साथ ही किसी भी साइडवेज़ ओवरफ्लो से बचने के लिए एक क्लैंप लगाया गया है।
नतीजा: विजेट ग्रिड में कहीं भी हो, सब-मेन्यू अब हमेशा पूरी तरह विज़िबल रहता है।
अपडेट कैसे पाएं
यह अपडेट Play Store के ज़रिए धीरे-धीरे रोलआउट किया जा रहा है (20% यूज़र्स से शुरू होकर, 24 से 48 घंटों में धीरे-धीरे 100% तक)। इसके 2 दिनों के भीतर सभी के लिए उपलब्ध होने की उम्मीद है। Play Store ऐप में « ऐप्स और डिवाइस मैनेज करें » सेक्शन से मैन्युअली भी चेक किया जा सकता है।
Google Play पर खोलें