เป็นที่ทราบกันว่าฟีเจอร์การช่วยสำหรับการเข้าถึงของ Android ทำให้เกิดความล่าช้าของ UI มันเป็นจุดบกพร่องหรือเป็นคุณสมบัติ? ทำไมมันถึงเกิดขึ้น? พวกเราที่ XDA กำลังตรวจสอบสาเหตุที่แท้จริง
ความงดงามของ Android อยู่ที่วิธีการต่างๆ มากมายที่แอปพลิเคชันบุคคลที่สามสามารถโต้ตอบกับระบบได้ แอพตัวจัดการรหัสผ่านเช่น LastPass ให้ความสามารถในการป้อนข้อมูลชื่อผู้ใช้/รหัสผ่านที่เกี่ยวข้องโดยอัตโนมัติไปยังหน้าจอเข้าสู่ระบบเกือบทุกหน้าจอ ส่งข้อความถึงผู้ช่วย ช่วยให้คุณลดเวลาในการส่งข้อความถึงเพื่อนของคุณได้อย่างมากโดยอนุญาตให้คุณสร้างมาโครการขยายข้อความ คลิปบอร์ดพื้นเมือง ลดความยุ่งยากในการสลับระหว่างแอปบ่อยครั้งเพื่อคัดลอกข้อความจำนวนมาก โดยให้คุณแตะสองครั้งในช่องป้อนข้อมูลเพื่อเปิดคลิปบอร์ด ใครจะลืมได้. ทำให้เป็นสีเขียวอาจเป็นแอปที่ได้รับการแนะนำมากที่สุดอันดับ 1 โดยผู้ที่ชื่นชอบ ซึ่งคอยตรวจสอบแอปพื้นหลังอันธพาลและช่วยยืดอายุการใช้งานแบตเตอรี่ได้ ท้ายที่สุด แม้ว่าผู้ใช้ส่วนใหญ่จะไม่ค่อยคุ้นเคยกับผู้ใช้ส่วนใหญ่ แต่ก็มีอยู่ ป้อนข้อมูลอัตโนมัติ - ปลั๊กอิน Tasker ที่ออกแบบมาเพื่อทำให้การแตะหน้าจอ การป้อนข้อความ ท่าทางการปัด และอื่นๆ เป็นแบบอัตโนมัติ แอปเหล่านี้ล้วนให้บริการในกรณีการใช้งานที่แตกต่างกันอย่างมากมาย แต่แอปเหล่านี้แต่ละแอปอาศัยฟังก์ชันการทำงานหลักของ Android ส่วนที่เข้าใจผิดอย่างมาก:
การเข้าถึงสำหรับผู้ใช้ Android โดยเฉลี่ย อาจดูแปลกที่ฟีเจอร์ที่น่าทึ่งมากมายที่แอปโปรดของคุณใช้นั้นถูกควบคุมโดยการตั้งค่าภายใต้ การเข้าถึง เมนูย่อย การทำแอพ เข้าถึงได้ โดยทั่วไปควรจะหมายความว่าแอป Android สามารถใช้งานได้กับบุคคลที่มี ความพิการ. แล้วเหตุใดในโลกนี้ที่ LastPass, Native Clipboard, Text Aide, Greenify หรือ AutoInput ถึงมี การเข้าถึง บริการ? นอกจากนี้ เหตุใดการเปิดใช้งานบริการการเข้าถึงจึงดูเหมือนเป็นเช่นนั้น ทำให้เกิดความล่าช้าของ UI มาก? ดูเหมือนจะไม่สำคัญว่าคุณใช้ Android เวอร์ชันใด - ไม่ว่าจะเป็นหรือไม่ก็ตาม ระบบปฏิบัติการ Android 5.0 อมยิ้ม หรือ ระบบปฏิบัติการ Android 7.0 นูกัต - เนื่องจากความล่าช้าที่เกิดจากบริการการเข้าถึงบางอย่างอาจส่งผลต่อประสบการณ์ของคุณ วิธีแก้ปัญหาง่ายๆ สำหรับปัญหานี้คือเพียงปิดการใช้งานบริการการเข้าถึงที่คุณอาจเปิดใช้งานไว้ - แต่ในการทำเช่นนั้น เราจะสูญเสียฟังก์ชันการทำงานที่มีประโยชน์มากมาย อีกวิธีหนึ่งคือการยื่นคำร้องให้ Google "แก้ไข" ความล่าช้าในการเข้าถึงของ Android แต่ Google อ้างว่าการเข้าถึงของ Android นั้นเป็นเช่นนั้น ทำงานตามที่ตั้งใจไว้. เราได้พูดคุยกับนักพัฒนาซอฟต์แวร์จำนวนหนึ่งที่คุ้นเคยอย่างใกล้ชิดกับบริการการเข้าถึงและได้ศึกษาวิธีการทำงานของฟังก์ชันต่างๆ และเราพร้อมที่จะทดสอบคำกล่าวอ้างดังกล่าว: ความสามารถในการเข้าถึงของ Android ล่าช้าหรือเป็นคุณสมบัติหรือไม่
ทำความเข้าใจเกี่ยวกับการเข้าถึงของ Android
ดังที่คุณอาจจินตนาการตามชื่อ การช่วยสำหรับการเข้าถึงนั้นส่วนใหญ่มีไว้สำหรับนักพัฒนาเพื่อให้มีฟังก์ชันเพิ่มเติมสำหรับผู้ใช้ที่มีความพิการ แท้จริงแล้วการดูอย่างรวดเร็วบน หน้าเอกสารอย่างเป็นทางการสำหรับการเข้าถึง เผยให้เห็นว่า Google มีมุมมองที่ค่อนข้างแคบว่าบริการการเข้าถึงควรให้บริการประเภทใด
ผู้ใช้ Android จำนวนมากมีความสามารถที่แตกต่างกันซึ่งกำหนดให้ต้องโต้ตอบกับอุปกรณ์ Android ด้วยวิธีที่ต่างกัน ซึ่งรวมถึงผู้ใช้ที่มีข้อจำกัดด้านการมองเห็น ร่างกาย หรืออายุ ซึ่งทำให้ไม่สามารถมองเห็นหรือได้อย่างเต็มที่ การใช้หน้าจอสัมผัส และผู้ใช้ที่สูญเสียการได้ยินที่อาจไม่สามารถรับรู้ข้อมูลเสียงและการแจ้งเตือนได้
Android นำเสนอฟีเจอร์และบริการการเข้าถึงเพื่อช่วยให้ผู้ใช้เหล่านี้ใช้งานอุปกรณ์ต่างๆ ได้มากขึ้น ได้อย่างง่ายดาย รวมถึงการอ่านออกเสียงข้อความ การโต้ตอบแบบสัมผัส การนำทางด้วยท่าทาง แทร็กบอล และแป้นทิศทาง การนำทาง
ของกูเกิล ทอล์คแบ็คซึ่งติดตั้งไว้ล่วงหน้าในโทรศัพท์ Android ทุกรุ่น เป็นตัวอย่างที่ดีว่าบริการการเข้าถึง "ทั่วไป" ควรจะเป็นอย่างไร การเข้าถึงด้วยเสียง ยกระดับการเข้าถึงไปอีกขั้นและช่วยให้สามารถควบคุมโทรศัพท์ของคุณได้เกือบสมบูรณ์โดยใช้เพียงเสียงของคุณ แต่การที่ Google ตั้งใจใช้บริการการเข้าถึงในลักษณะนี้ไม่ได้ป้องกัน นักพัฒนาไม่ต้องนำไปประยุกต์ใช้ในลักษณะใดก็ตามที่พวกเขาต้องการ - และนั่นคือสิ่งที่นักพัฒนามี เสร็จแล้ว. เป็นเพราะวิธีการทำงานของการช่วยสำหรับการเข้าถึงที่สร้างฟีเจอร์นี้ มีประโยชน์อย่างเหลือเชื่อสำหรับผู้ใช้ที่มีหรือไม่มีความพิการ.
เพื่อให้สิ่งต่าง ๆ ง่ายขึ้น นี่คือบทสรุปเบื้องต้นเกี่ยวกับวิธีการทำงานของการเข้าถึงของ Android นักพัฒนาสร้างไฟล์ บริการการเข้าถึง ที่สมัครสมาชิกต่างๆ เหตุการณ์การเข้าถึง ที่ระบบส่งไปยังบริการ ขึ้นอยู่กับว่าตรงตามเกณฑ์ที่กำหนดหรือไม่ เมื่อบริการทั้งหมดถูกปิดใช้งานภายใต้การตั้งค่า -> การเข้าถึง Android จะไม่รวบรวมหรือส่งเหตุการณ์การเข้าถึงใด ๆ แต่เมื่อผู้ใช้เริ่มเปิดใช้งานบริการการเข้าถึง Android จะเริ่มตรวจสอบและรวบรวม เฉพาะเหตุการณ์การเข้าถึงที่บริการการเข้าถึงร้องขอเท่านั้น. ตัวอย่างเช่น บริการการเข้าถึงที่สมัครรับเหตุการณ์การเข้าถึง TYPE_WINDOW_CONTENT_CHANGED จะได้รับแจ้งจากระบบ ทุกครั้ง ว่ามีการเปลี่ยนแปลงในหน้าต่างปัจจุบันเกิดขึ้น อีกกิจกรรมการเข้าถึงที่เรียกว่า TYPE_VIEW_คลิกแล้ว ดับลง ทุกครั้ง ผู้ใช้คลิกที่ปุ่มใดปุ่มหนึ่ง
การสาธิตการเข้าถึงของ Android ในวิดีโอนี้ ฉันได้เปิดใช้งานแอปแล้ว ทาซเคอร์ เพื่อตรวจสอบ การเปลี่ยนแปลงในชื่อหน้าต่าง. สิ่งนี้จำเป็นต้องเปิดใช้งานบริการการเข้าถึงของ Tasker คุณสามารถทำซ้ำสิ่งนี้ได้โดยการสร้างโปรไฟล์ใหม่ใน Tasker โดยตั้งค่าบริบท 'เหตุการณ์' เป็น 'ชุดตัวแปร' และเลือก %WIN เป็นตัวแปรที่จะตรวจสอบ โดยรวมแล้ววิดีโอนี้ถ่ายไว้ประมาณ 1 นาที การเปลี่ยนแปลง 107 รายการในหน้าต่างปัจจุบัน
เหตุการณ์การช่วยสำหรับการเข้าถึงประเภทนี้เกิดขึ้นบ่อยครั้งมากในระหว่างการโต้ตอบของผู้ใช้ตามปกติ ลองจินตนาการว่าจะเกิดอะไรขึ้นเมื่อผู้ใช้ เปิดใช้งานบริการการเข้าถึงที่หลากหลาย ที่ขอให้ปิดกิจกรรมการเข้าถึงความถี่สูง ถูกตัอง - ความล่าช้า เพื่อบรรเทาปัญหานี้ นักพัฒนาสามารถกำหนดประเภทของกิจกรรมการช่วยสำหรับการเข้าถึงให้แคบลงได้ บริการควรตอบสนองและในบริบทใด เช่น ความสามารถในการจำกัดบริการให้ตอบสนองเท่านั้น เมื่อเข้า แอพบางตัว หรือเพื่อจำกัด ระยะเวลาการเลือกตั้ง ระหว่างเหตุการณ์ แต่นอกเหนือจากนั้น จำนวนค่าใช้จ่ายที่เกิดจากบริการการเข้าถึงนั้นขึ้นอยู่กับเป็นส่วนใหญ่ กิจกรรมการเข้าถึงประเภทใด มันสมัครสมาชิก โดยพื้นฐานแล้ว ไม่ใช่ทุกบริการการเข้าถึงที่จะทำให้เกิดความล่าช้า บริการการเข้าถึงเดียวที่ต้องใช้เหตุการณ์ความถี่สูงอาจทำให้เกิดความล่าช้า โดยเฉพาะอย่างยิ่งหาก บริการดังกล่าวจะควบคู่ไปกับบริการอื่นที่ต้องการให้มีเหตุการณ์ความถี่สูงอีกรายการหนึ่ง ได้รับการตรวจสอบ
เจาะลึกการเข้าถึงด้วย APK Teardowns
ดังที่คุณทราบได้จากวิดีโอที่โพสต์ด้านบน บริการการเข้าถึงที่ตรวจสอบการเปลี่ยนแปลงในเนื้อหาหน้าต่างสามารถทำได้ ส่งผลให้เกิดการเปลี่ยนแปลงที่เห็นได้ชัดเจนในประสิทธิภาพของ UI เนื่องจากเหตุการณ์การช่วยสำหรับการเข้าถึงที่บันทึกจำนวนมากถูกไล่ออกโดย ระบบ. อย่างไรก็ตาม เป็นการยากที่จะระบุได้อย่างแน่ชัดว่าบริการการเข้าถึงพิเศษมีค่าใช้จ่ายเท่าใด โดยทั่วไปแล้ว การตรวจสอบ LogCat จะทำให้คุณไม่ได้ผล เนื่องจากกิจกรรมการช่วยสำหรับการเข้าถึงจะถูกพิมพ์ไปที่ LogCat หากผู้พัฒนาบริการการช่วยสำหรับการเข้าถึงเลือกที่จะทำเช่นนั้น โชคดีที่เป็นบิดาแห่งบริการการเข้าถึงของ Android ทั้งหมด ป้อนข้อมูลอัตโนมัติ, ทำอย่างนั้นจริงๆ และเอาต์พุตของ LogCat นั้นยุ่งเหยิงอย่างที่คุณคิด
การป้อนข้อมูลอัตโนมัติไม่ได้ซ่อนความจริงจากเรา ค่าใช้จ่ายที่เกิดจากแอปอาจมีจำนวนมหาศาลขึ้นอยู่กับเหตุการณ์ที่คุณติดตาม แต่ค่าใช้จ่ายนี้จำเป็นสำหรับแอปในการทำงาน เพื่อให้ AutoInput สกัดกั้นทุกการกดปุ่ม ทุกท่าทางบนหน้าจอ ทุกการอัปเดต UI และทุกการกดปุ่ม ความต้องการ เพื่อตรวจสอบเหตุการณ์การช่วยสำหรับการเข้าถึงที่เกี่ยวข้อง หากไม่มีเหตุการณ์เหล่านี้ AutoInput จะไม่สามารถเชื่อมต่อกับระบบได้ และจัดให้มี UI อัตโนมัติที่เกือบจะไม่จำกัดตามที่ระบบอนุญาตในปัจจุบัน ดังนั้นฟังก์ชันทั้งหมดของ AutoInput จึงสมเหตุสมผลอย่างยิ่งในบริบทของการเข้าถึง แต่สำหรับแอปอื่นๆ เราต้องพิจารณาให้ลึกซึ้งยิ่งขึ้นอีกเล็กน้อยเพื่อทำความเข้าใจวิธีจัดการบริการการเข้าถึง
บริการการเข้าถึง คุณลักษณะ ถูกกำหนดไว้ใน ไฟล์ทรัพยากร XML ภายใน APK ดังนั้นเราจึงสามารถดำเนินการได้ การรื้อ APK บนแอปที่มีบริการการเข้าถึงเพื่อค้นหาคุณลักษณะของบริการ แต่ละแอปทำงานแตกต่างกัน ดังนั้นฉันจะพยายามอธิบายว่าคุณลักษณะของบริการเกี่ยวข้องกับฟังก์ชันเฉพาะที่แอปทำงานอย่างไร
คลิปบอร์ดพื้นเมือง
Native Clipboard เป็นสิ่งที่ฉันชอบเมื่อพูดถึงผู้จัดการคลิปบอร์ด หากคุณกำลังมองหาผู้จัดการคลิปบอร์ดที่ปรับแต่งได้สูง Native Clipboard เป็นแอปที่ยอดเยี่ยมทีเดียว มันยังมีส่วนประกอบ Xposed Module ที่ให้คุณกดปุ่ม 'วาง' ค้างไว้เพื่อเรียกใช้ตัวจัดการคลิปบอร์ด! น่าเสียดาย หากคุณไม่สามารถเข้าถึง Xposed Framework (เช่น ผู้ใช้ทุกรายบน Nougat) คุณจะต้องชำระเงิน สำหรับการเปิดใช้งานบริการการเข้าถึงซึ่งจะช่วยให้คุณสามารถแตะสองครั้งที่การป้อนข้อความใด ๆ เพื่อเปิดคลิปบอร์ด ผู้จัดการ. นี่คือสิ่งที่เกี่ยวข้อง
"@string/access_decs"
android: accessibilityEventTypes="typeViewClicked|typeViewFocused|typeViewLongClicked|typeWindowStateChanged"
android: accessibilityFeedbackType="feedbackGeneric"
android: notificationTimeout="100"
android: accessibilityFlags="flagReportViewIds|flagRetrieveInteractiveWindows"
android: canRetrieveWindowContent="true"
xmlns: andro />
คำขอบริการการเข้าถึงของ Native Clipboard จะเริ่มต้นเหตุการณ์การเข้าถึงทุกครั้งที่มีการคลิกมุมมอง คลิกยาว โฟกัส หรือหากมีการเปลี่ยนแปลงในสถานะของหน้าต่าง หากไม่มีสิทธิ์เข้าถึงซอร์สโค้ด ฉันไม่สามารถบอกได้อย่างแน่ชัดว่า Native Clipboard ทำงานอย่างไร แต่น่าจะเป็น Native Clipboard รอให้สถานะ Window ระบุว่าซอฟต์คีย์บอร์ดเปิดอยู่ จากนั้นจะตรวจสอบการแตะบนอินพุต สนาม. แอปมีระยะเวลาการโพล 100 มิลลิวินาที ดังนั้นจึงรวดเร็วพอที่จะตอบสนองโดยทันทีต่อการเปลี่ยนแปลงในการมองเห็นซอฟต์คีย์บอร์ด รวมถึงการแตะสองครั้ง ซึ่งอาจส่งผลให้ UI โอเวอร์เฮดเมื่อใดก็ตามที่ผู้ใช้ใช้คีย์บอร์ดอ่อนเพื่อพิมพ์ข้อความใดๆ ซึ่งอาจส่งผลให้เกิดความล่าช้า
ทำให้เป็นสีเขียว
ถัดไปคือโปรแกรมประหยัดแบตเตอรี่ที่ทุกคนชื่นชอบ Greenify Greenify ใช้เหตุการณ์การช่วยสำหรับการเข้าถึงเพื่อขับเคลื่อนฟังก์ชันที่ไม่ใช่รูท
"@string/accessibility_service_description"
android: settingsActivity="com.oasisfeng.greenify.accessibility.AccessibilitySettings"
android: accessibilityEventTypes="typeAnnouncement|typeNotificationStateChanged|typeWindowStateChanged"
android: accessibilityFeedbackType="feedbackGeneric" android: notificationTimeout="0"
android: accessibilityFlags="flagReportViewIds"
android: canRetrieveWindowContent="true"
xmlns: andro />
ใช้การเปลี่ยนแปลงในสถานะหน้าต่างเพื่อพิจารณาว่าหน้าจอของโทรศัพท์ปิดเมื่อใด และกำหนดให้คุณต้องชะลอการเปิดใช้งานหน้าจอล็อคโดยการเปลี่ยนตัวเลือกในการตั้งค่าความปลอดภัย Greenify จะได้รับเหตุการณ์ประเภทการประกาศหรือสถานะการแจ้งเตือนที่เปลี่ยนแปลง ซึ่งไม่จำเป็นในอุปกรณ์ Android 5.0+ เนื่องจากมีฟีเจอร์การเข้าถึงการแจ้งเตือน อย่างไรก็ตามจะยังคงได้รับกิจกรรมเหล่านี้โดยไม่คำนึงถึงข้อเท็จจริงนั้น Greenify ไม่ควรทำให้เกิดค่าใช้จ่ายมากนัก แต่ความเป็นไปได้ยังคงอยู่
โนวาลอนเชอร์
อาจเป็นแอป Launcher ของบุคคลที่สามที่ได้รับความนิยมมากที่สุดในตลาด Nova Launcher เป็นตัวอย่างที่ยอดเยี่ยมของแอปที่ใช้บริการการเข้าถึงโดยมีค่าใช้จ่ายเพียงเล็กน้อยหรือไม่มีเลย เหตุผลเดียวของการมีอยู่ของบริการคือเพื่อช่วยเหลืออุปกรณ์บางอย่างในการแสดงท่าทาง
"@string/accessibility_service_description"
android: accessibilityEventTypes=""
android: packageNames="com.teslacoilsw.launcher"
android: accessibilityFeedbackType=""
android: notificationTimeout="10000"
android: canRetrieveWindowContent="false"
xmlns: andro />
อย่างที่คุณเห็น ไม่มีเหตุการณ์การเข้าถึงที่กำหนดไว้ในไฟล์ XML ทั้งหมดที่กล่าวมาคือชื่อของแพ็คเกจ - Nova Launcher สิ่งที่เกิดขึ้นที่นี่คือวิธีแก้ปัญหาสำหรับอุปกรณ์บางอย่างที่ท่าทางของ Nova Launcher ไม่ทำงาน บริการนี้จะมอบกิจกรรมการช่วยสำหรับการเข้าถึงทั้งหมดของ Nova Launcher ที่ถูกไล่ออกจาก ภายใน Nova Launcher เท่านั้น. ฟังดูแปลก แต่เห็นได้ชัดว่าเป็นวิธีแก้ไขท่าทางหน้าจอหลักของ Nova หากอุปกรณ์ของคุณใช้งานไม่ได้ เนื่องจากการดำเนินการนี้ร้องขอเฉพาะเหตุการณ์จาก Nova เอง บริการจึงมีค่าใช้จ่ายน้อยมาก
LastPass
สุดท้ายนี้ บางทีบริการการเข้าถึงที่น่าอับอายที่สุดซึ่งทำให้เกิดความล่าช้า (อาจเป็นเพราะความนิยมอย่างมาก) - LastPass ปัญหาความล่าช้าภายใน LastPass คือ เห็นได้ชัดเจนมาก ว่าบริษัทมีเจ้าหน้าที่แล้ว หน้าคำถามที่พบบ่อยที่อธิบายปัญหา. ตามที่ระบุไว้ในคำถามที่พบบ่อย คุณไม่สามารถทำอะไรเกี่ยวกับความล่าช้าได้ยกเว้นการปิดใช้งานบริการ เหตุใดบริการของ LastPass จึงดูแย่มากเมื่อพูดถึงความล่าช้า? มาดูคุณสมบัติของบริการกันดีกว่า
"@string/accessibility_service_description"
android: accessibilityEventTypes="typeViewFocused|typeWindowContentChanged"
android: accessibilityFeedbackType="feedbackGeneric"
android: notificationTimeout="200"
android: accessibilityFlags="flagReportViewIds"
android: canRetrieveWindowContent="true"
android: canRequestEnhancedWebAccessibility="true"
xmlns: andro />
ความจริงก็คือ ไม่มีอะไรผิดปกติกับบริการของ LastPass ขอเพียงสองประเภทเหตุการณ์เพื่อตรวจสอบ - TYPE_VIEW_FOCUSED และ TYPE_WINDOW_CONTENT_CHANGED ซึ่งทำเช่นนี้เนื่องจากจำเป็นต้องทราบว่าเมื่อใดที่เนื้อหาของแอป/หน้าเว็บมีการเปลี่ยนแปลง/เข้าสู่โฟกัส จากนั้นจะดึงเนื้อหาหน้าต่างปัจจุบันเพื่อค้นหาช่องป้อนรหัสผ่านใดๆ แต่เนื่องจากบริการทำสิ่งนี้อย่างต่อเนื่องในเหตุการณ์การช่วยสำหรับการเข้าถึงที่เริ่มทำงานบ่อยมากสองครั้ง จึงส่งผลให้เกิดความล่าช้า นั่นคือความจริงที่น่าเสียดาย
อยู่กับความล่าช้า
เมื่อเราอ่านครั้งแรกว่า Google กำลังปิดรายงานข้อบกพร่องเกี่ยวกับความล่าช้าในการเข้าถึงเนื่องจากฟีเจอร์นี้ "ทำงานตามที่ตั้งใจไว้" เราก็รู้สึกสับสนและไม่พอใจเช่นเดียวกับพวกคุณหลายคน แต่แทนที่จะยอมรับคำอธิบายตามความเป็นจริง เราตัดสินใจที่จะพิจารณาเรื่องนี้ด้วยตัวเองเพื่อตัดสินความจริง ดังนั้นเมื่อ Googler ในหน้ารายงานข้อบกพร่องกล่าวว่า:
สวัสดี ปัญหานี้ยังคงเกิดขึ้นอย่างต่อเนื่องใน Android รุ่นต่างๆ นอกจากนี้ จะมีความล่าช้าเพิ่มเติมเสมอเมื่อเปิดใช้งานบริการการเข้าถึง นั่นเป็นเพราะว่าอุปกรณ์ นอกเหนือจาก UI มาตรฐานแล้ว กำลังให้ข้อมูลจำนวนมากแก่บริการการเข้าถึง เพื่อให้สามารถมอบประสบการณ์ผู้ใช้ทางเลือกให้กับผู้ใช้เหล่านั้นได้
เรามาทำความเข้าใจกัน ทำไม นี่คือ พฤติกรรมที่ตั้งใจไว้ แอปที่ใช้บริการการเข้าถึงในลักษณะที่ Google ไม่ได้ตั้งใจจะมีค่าใช้จ่ายด้านประสิทธิภาพอยู่เสมอ ค่าใช้จ่ายนี้จำเป็นเพียงเพื่อให้บริการด้วยข้อมูลมากมายที่การเข้าถึงของ Android ทำงานในเบื้องหลัง ความล่าช้าของ Android กับบริการการเข้าถึงคือ ไม่ใช่จุดบกพร่อง แต่เป็นคุณลักษณะ. คุณลักษณะที่เราจะต้องใช้งานเว้นแต่ว่าทั้งระบบจะได้รับการแก้ไขใหม่ และฉันไม่สามารถจินตนาการได้เลยว่าจะทำอย่างไรเพื่อรองรับชุดคุณลักษณะต่างๆ มากมายจากแอปต่างๆ มากมาย
อย่างน้อยที่สุด นักพัฒนา LastPass จะไม่ละทิ้งเรื่องนี้ นักพัฒนาของพวกเขาได้ทำงานร่วมกับนักพัฒนา Chromium เพื่อ เพิ่มประสิทธิภาพการสนับสนุนการเข้าถึงอาจโดยการเปิดใช้งานการสนับสนุน LastPass ผ่านการใช้ API แทนที่จะเปิดใช้งานบริการการเข้าถึง การเพิ่มประสิทธิภาพค่าใช้จ่ายที่เกิดขึ้นจากบริการการเข้าถึงเป็นหนึ่งในความเป็นไปได้ แต่อย่างที่นักพัฒนาหลายรายได้ระบุไว้โดยปริยาย ฟอรัม Chromium เป็นเพียง bandaid ที่จะไม่แก้ไขข้อเท็จจริงที่ว่าการใช้บริการการเข้าถึงโดยไม่ได้ตั้งใจอาจส่งผลให้ ความล่าช้า
ขอขอบคุณเป็นพิเศษสำหรับผู้พัฒนา AutoInput, joaomgcd สำหรับการตอบคำถามมากมายของฉันเกี่ยวกับการเข้าถึง!