PSA: การรองรับไอคอนแบบวงกลมของ Android 7.1 ถูกกำหนดโดย OEM

การรองรับไอคอนวงกลมของ Android 7.1 นั้นถูกกำหนดโดยเฟรมเวิร์กของระบบ ซึ่งจะถูกกำหนดโดย OEM ตามลำดับ ซึ่งอาจส่งผลให้การออกแบบไม่สอดคล้องกัน

ความสอดคล้องของการออกแบบถือเป็นอุปสรรคสำคัญอย่างหนึ่งสำหรับ Google นับตั้งแต่ Android เริ่มได้รับความนิยมอย่างล้นหลาม ในขั้นต้น ปรัชญาของ Google คือการปล่อยให้ OEM สามารถควบคุมปรัชญาการออกแบบของตนได้อย่างเต็มที่ ในตอนแรก การเปิดกว้างในระดับนี้ล่อลวง OEM ให้ลงทุนทรัพยากรจำนวนมากในการผลิตสมาร์ทโฟนและแท็บเล็ต Android

อย่างไรก็ตาม สกิน OEM ที่หลากหลายนั้นแตกต่างอย่างสิ้นเชิงกับประสบการณ์การใช้งาน Apple iPhone ที่มีการควบคุมอย่างเข้มงวด เริ่มต้นด้วย Android Lollipop Google ได้ทำการเปลี่ยนแปลงการออกแบบที่สำคัญ (การออกแบบวัสดุ UX นำโดย Matias Duarte หัวหน้านักออกแบบ Android ในขณะนั้น) และหวังว่านักพัฒนาแอปและ OEM จะตามมา สูท. แม้ว่า OEM บางราย เช่น Motorola และ Sony พอใจกับการติดตามผู้นำของ Google แต่ OEM อื่นๆ เช่น Samsung และ Huawei ยังคงมีภาษาการออกแบบที่ส่วนใหญ่ไม่ใช่วัสดุ

Google ยังไม่ละทิ้งการบังคับใช้การออกแบบที่สอดคล้องกันในอุปกรณ์ Android ต่างๆ และหนึ่งในความพยายามล่าสุดของพวกเขาคือการรวมเอา

รองรับไอคอนวงกลมใน Android 7.1 Nougat. ไอคอนแบบวงกลมมีวัตถุประสงค์เพื่อแก้ไขปัญหาเกี่ยวกับขนาดไอคอนที่ไม่สอดคล้องกัน แต่แนวทางนี้มีชุดปัญหาที่ฉันจะปล่อยให้นักออกแบบ Liam Spradlin จาก Android Police อธิบาย. Android 7.1 เพิ่งมาถึงอุปกรณ์ Nexus ไม่นานนัก และ OEM ต้องใช้เวลาพอสมควรในการ เริ่มเปิดตัว Nougat ดังนั้นจึงไม่มีความชัดเจนว่าการรองรับไอคอนวงกลมจะส่งผลต่อการออกแบบอย่างไร ความสม่ำเสมอ แต่อะไร เป็น ชัดเจนว่าไอคอนทรงกลมอาจตายได้ก่อนที่พวกเขาจะมีโอกาสเติบโตด้วยซ้ำ เพราะว่า จนถึงตอนนี้ Google ได้ทำให้มันขึ้นอยู่กับ OEM โดยสิ้นเชิง ไม่ว่าพวกเขาต้องการให้ผู้ใช้เห็นไอคอนวงกลมหรือไม่ก็ตาม


การสนับสนุนไอคอนแบบวงกลมถูกกำหนดโดยกรอบงาน

เกือบทุกฟีเจอร์ของ Google Pixel รั่วไหลออกมาล่วงหน้าโดยบล็อกต่างๆ แม้แต่การรองรับไอคอนวงกลมก็ยังถูกบอกใบ้อย่างหนักว่าเป็น Pixel Launcher ที่รั่วไหลออกมา ระบุว่ารองรับไอคอนวงกลม และแอป Google อื่นๆ ได้รับการอัปเดตอย่างช้าๆ ด้วยเนื้อหาไอคอนวงกลมที่ฝังอยู่ใน APK อย่างไรก็ตาม ในขณะนั้นเหล่าบล็อกเกอร์ได้ทำการ สมมติฐานที่ผิดพลาด: การสนับสนุนไอคอนวงกลมนั้นจะเชื่อมโยงกับตัวเรียกใช้งาน เป็นการยากที่จะตำหนิพวกเขา แม้ว่าจะเป็นของ Google ก็ตาม ประกาศอย่างเป็นทางการ ของคุณลักษณะนี้ไม่มีรายละเอียดใดๆ

โชคดีที่ Commonsware นักพัฒนา Android รุ่นเก๋าได้เจาะลึกรายละเอียดเพิ่มเติมเกี่ยวกับวิธีการใช้งานการรองรับไอคอนวงกลมใน Android 7.1 Nougat แทนที่จะที่นักพัฒนาแอปเปิดเผยไอคอนทรงกลมผ่าน PackageManager (อนุญาตให้ตัวเรียกใช้งานตัดสินใจว่าจะแสดงไอคอนทรงกลมหรือไม่) กรอบงานของระบบตัดสินใจว่าจะส่งคืนไอคอนปกติหรือไอคอนกลมไปยังตัวเรียกใช้งานหรือไม่

เมื่อตัวเรียกใช้งานร้องขอไอคอนแอป เฟรมเวิร์กก็จะส่งคืนเช่นกัน android: icon หรือ android: roundIconขึ้นอยู่กับการกำหนดค่าบิวด์อุปกรณ์

ความหมายหลักคือ OEM สามารถตัดสินใจได้ว่าจะแสดงไอคอนวงกลมบนอุปกรณ์ของคุณหรือไม่ หาก Samsung, Huawei, LG หรือ OEM อื่น ๆ ตัดสินใจที่จะละทิ้งไอคอนวงกลม อุปกรณ์ของคุณจะไม่เห็นเนื้อหาไอคอนทรงกลมใด ๆ ไม่ว่าคุณจะติดตั้งตัวเรียกใช้งานบุคคลที่สามก็ตาม ตีหนึ่งสำหรับการผลักดันความสม่ำเสมอในการออกแบบของ Google

คอมมอนส์แวร์ยังค้นพบว่าเฟรมเวิร์กตัดสินใจว่าจะส่งคืนไอคอนแบบวงกลมหรือไอคอนปกติสำหรับกระบวนการใดๆ ที่ร้องขอไอคอนแอปหรือไม่ กล่าวอีกนัยหนึ่ง นักพัฒนาจะต้องระมัดระวังไม่ให้ไอคอนวงกลมดูดีไม่เพียงแต่ในการกำหนดค่าอุปกรณ์/ตัวเรียกใช้งานบางอย่างเท่านั้น แต่ทุกที่ก็ขอได้

ไอคอนแอปแบบวงกลมเป็นการเปลี่ยนแปลงรูปลักษณ์ที่ดี แต่ก็ชัดเจนว่ามีปัญหาในการใช้งาน เราอาจเห็นว่ามีเพียงอุปกรณ์บางอย่างเช่น Google Pixel และ อาจจะ โทรศัพท์ Motorola บางรุ่นจะใช้การรองรับไอคอนวงกลม ในขณะที่ OEM อื่นๆ จะเลือกใช้ไอคอนปกติต่อไป หากสถานการณ์นี้เกิดขึ้น เจ้าของพิกเซลอาจพบว่าตนเองมีแอปที่ไม่ใช่วงกลมจำนวนมากจากแอป นักพัฒนาที่ไม่ต้องการอัปเดตเนื้อหาไอคอนของตนเพื่อรองรับอุปกรณ์เพียงไม่กี่เครื่องที่จะรองรับ ไอคอน และในกรณีนั้น อาร์กิวเมนต์ความสอดคล้องทั้งหมดสำหรับไอคอนทรงกลมอาจเป็นสิ่งที่สงสัย

ขอบคุณ Commonsware ที่ค้นพบสิ่งนี้!