แอป Android มีบทบาทสำคัญในการกำหนดนิยามใหม่ของคอมพิวเตอร์ยุคใหม่บนหน้าจอขนาดใหญ่ แต่การเรียกใช้แอปบนอุปกรณ์เคลื่อนที่ใน Chromebook เพียงอย่างเดียวไม่ได้มอบประสบการณ์การใช้งานที่ดีที่สุดแก่ผู้ใช้
หน้านี้แสดงรายละเอียดวิธีปรับแต่งประสบการณ์การใช้งาน ให้เหมาะกับแล็ปท็อปและอุปกรณ์แบบ 2-in-1 ดูรายการการทดสอบทั้งหมดเพื่อดูข้อมูลเพิ่มเติมเกี่ยวกับการทดสอบแอปเพื่อ ความเข้ากันได้ในอุปกรณ์เหล่านี้
ใช้ประโยชน์จากการรองรับฟีเจอร์หลายหน้าต่างแบบอิสระ
การติดตั้งใช้งานแอป Android บน ChromeOS มีการรองรับการทำงานแบบหลายหน้าต่างขั้นพื้นฐาน Android จะแสดงผลแอปใน ChromeOS เป็นคอนเทนเนอร์หน้าต่างแบบอิสระ ซึ่งเหมาะกับอุปกรณ์เหล่านี้มากกว่าแทนที่จะใช้เต็มหน้าจอเสมอ
ผู้ใช้สามารถปรับขนาดหน้าต่างที่มีแอป Android ของคุณได้ ดังแสดงในรูปที่ 1 หากต้องการให้มั่นใจว่าหน้าต่างแบบอิสระจะปรับขนาดได้อย่างราบรื่นและแสดงเนื้อหาทั้งหมดต่อผู้ใช้ โปรดอ่านหลักเกณฑ์ในการจัดการหน้าต่าง
รูปที่ 1 หน้าต่างแอปที่ปรับขนาดได้
คุณสามารถปรับปรุงประสบการณ์ของผู้ใช้เมื่อแอปทำงานบน ChromeOS ได้โดยทำตามแนวทางปฏิบัติแนะนำต่อไปนี้
- จัดการ วงจรกิจกรรมอย่างถูกต้องใน โหมดหลายหน้าต่าง และตรวจสอบว่าคุณอัปเดต UI อย่างต่อเนื่อง แม้ว่าแอปจะไม่ใช่ หน้าต่างที่โฟกัสอยู่ด้านบนสุดก็ตาม
- ตรวจสอบว่าแอปปรับเลย์เอาต์อย่างเหมาะสมทุกครั้งที่ผู้ใช้ปรับขนาดหน้าต่าง
- ปรับแต่งขนาดเริ่มต้นของหน้าต่างแอปโดยระบุขนาดเมื่อเปิด
- โปรดทราบว่าการวางแนว ของกิจกรรมรากของแอปจะส่งผลต่อหน้าต่างทั้งหมดของแอป
ปรับแต่งสีแถบด้านบน
ChromeOS ใช้ธีมแอปเพื่อกำหนดสีแถบด้านบนที่แสดงเหนือแอป
ซึ่งจะแสดงเมื่อผู้ใช้กดปุ่มควบคุมหน้าต่างและปุ่มย้อนกลับค้างไว้ หากต้องการให้แอปดูดีและปรับแต่งสำหรับ ChromeOS ให้กำหนดค่า colorPrimary
และหากเป็นไปได้ ให้กำหนดค่า colorPrimaryDark
ในธีมของแอป
colorPrimaryDark ใช้เพื่อกำหนดสีแถบด้านบน หากกำหนดเฉพาะ
colorPrimary ChromeOS จะใช้เวอร์ชันที่เข้มกว่าใน
แถบด้านบน ดูข้อมูลเพิ่มเติมได้ที่สไตล์และธีม
รองรับแป้นพิมพ์ แทร็กแพด และเมาส์
Chromebook ทุกรุ่นมีแป้นพิมพ์จริงและแทร็กแพด และบางรุ่นมี หน้าจอสัมผัสด้วย อุปกรณ์บางรุ่นสามารถเปลี่ยนจากแล็ปท็อปเป็นแท็บเล็ตได้
ในแอปสำหรับ ChromeOS ให้รองรับอินพุตจากเมาส์ แทร็กแพด และแป้นพิมพ์ เพื่อให้แอปใช้งานได้โดยไม่ต้องใช้หน้าจอสัมผัส แอปจำนวนมากรองรับเมาส์และแทร็กแพดอยู่แล้วโดยไม่ต้องดำเนินการใดๆ เพิ่มเติม อย่างไรก็ตาม เราขอแนะนำให้ปรับแต่งลักษณะการทำงานของแอปให้เหมาะสมกับเมาส์ รวมถึงรองรับและแยกความแตกต่างระหว่างอินพุตจากเมาส์และการสัมผัส
ตรวจสอบตามรายละเอียดต่อไปนี้
- เป้าหมายทั้งหมดสามารถคลิกได้ด้วยเมาส์
- พื้นผิวทั้งหมดที่เลื่อนได้ด้วยการสัมผัสจะเลื่อนเมื่อเกิดเหตุการณ์ล้อเลื่อนของเมาส์ ดังที่แสดงใน รูปที่ 2
- เราใช้สถานะการวางเมาส์ด้วยการพิจารณาอย่างรอบคอบเพื่อปรับปรุง การค้นพบ UI โดยไม่ทำให้ผู้ใช้รู้สึกว่ามีข้อมูลมากเกินไป ดังที่แสดงในรูปที่ 3
รูปที่ 2 การเลื่อนด้วยล้อเลื่อนของเมาส์
รูปที่ 3 สถานะการวางเมาส์เหนือปุ่ม
แยกความแตกต่างระหว่างอินพุตจากเมาส์และอินพุตแบบสัมผัสตามความเหมาะสม ตัวอย่างเช่น การแตะรายการค้างไว้อาจทริกเกอร์ UI แบบหลายรายการเลือก ในขณะที่การคลิกขวาที่รายการเดียวกันอาจทริกเกอร์เมนูตัวเลือกแทน
เคอร์เซอร์ที่กำหนดเอง
ปรับแต่งเคอร์เซอร์เมาส์ของแอปเพื่อระบุวิธีที่ผู้ใช้โต้ตอบกับองค์ประกอบ UI ของแอปได้
คุณสามารถตั้งค่า PointerIcon ที่เหมาะสมเพื่อใช้
เมื่อผู้ใช้โต้ตอบกับองค์ประกอบโดยใช้ตัวแก้ไข
pointerHoverIcon
ในแอป ให้แสดงข้อมูลต่อไปนี้ทั้งหมด
- เคอร์เซอร์ I-beam สำหรับข้อความ
- แฮนเดิลปรับขนาดที่ขอบเลเยอร์ที่ปรับขนาดได้
- เคอร์เซอร์มือเปิดและมือปิดสำหรับเนื้อหาที่เลื่อนหรือลากได้ โดยใช้ท่าทางสัมผัสคลิกแล้วลาก
- วงกลมแสดงการประมวลผล
คลาส PointerIcon มีค่าคงที่ที่คุณใช้เพื่อใช้เคอร์เซอร์ที่กำหนดเองได้
แป้นพิมพ์ลัดและการไปยังส่วนต่างๆ
เนื่องจาก Chromebook ทุกเครื่องมีแป้นพิมพ์จริง ให้ระบุปุ่มลัดเพื่อช่วยให้ผู้ใช้ทำงานได้อย่างมีประสิทธิภาพมากขึ้น เช่น หากแอปของคุณรองรับการพิมพ์ คุณสามารถใช้ Control+P เพื่อเปิดกล่องโต้ตอบการพิมพ์ได้
ในทำนองเดียวกัน ให้จัดการองค์ประกอบ UI ที่สำคัญทั้งหมดโดยใช้การไปยังส่วนต่างๆ ด้วยแท็บ ซึ่งมีความสำคัญอย่างยิ่งต่อการช่วยเหลือพิเศษ เพื่อให้เป็นไปตามมาตรฐานการช่วยเหลือพิเศษ พื้นผิว UI ทั้งหมดต้องมีสถานะที่โฟกัสซึ่งชัดเจนและเป็นไปตามข้อกำหนดด้านการช่วยเหลือพิเศษ ดังที่แสดงในรูปต่อไปนี้
รูปที่ 4 การกด Tab ในแนวนอน
รูปที่ 5 แทนที่ท่าทางสัมผัสการปัดด้วยตัวควบคุมที่จะปรากฏเมื่อวางเมาส์
อย่าลืมใช้แป้นพิมพ์หรือเมาส์แทนฟีเจอร์หลักที่ซ่อนอยู่ภายใต้การโต้ตอบที่เฉพาะเจาะจงกับการสัมผัส เช่น การแตะค้างไว้ การปัด หรือท่าทางสัมผัสแบบมัลติทัชอื่นๆ ตัวอย่างโซลูชันคือการระบุ ปุ่มที่ปรากฏบนพื้นผิวเมื่อวางเมาส์
ดูข้อมูลเพิ่มเติมเกี่ยวกับการรองรับแป้นพิมพ์ แทร็กแพด และเมาส์ได้ที่ ความเข้ากันได้ของอินพุตบนหน้าจอขนาดใหญ่
ปรับปรุงการป้อนข้อมูลของผู้ใช้เพิ่มเติม
หากต้องการให้แอปมีฟังก์ชันการทำงานระดับเดสก์ท็อป ให้พิจารณาอินพุตที่มุ่งเน้นด้าน ประสิทธิภาพการทำงานต่อไปนี้
เมนูตามบริบท
เมนูบริบทของ Android ซึ่งเป็นอีกตัวเร่งที่นำผู้ใช้ไปยัง ฟีเจอร์ของแอป สามารถเรียกใช้ได้โดยการคลิกเมาส์หรือปุ่มรองของแทร็กแพด หรือผ่านการแตะค้างบนหน้าจอสัมผัส
รูปที่ 6 เมนูตามบริบทจะปรากฏขึ้นเมื่อคลิกขวา
ลาก
การสร้างการโต้ตอบแบบลาก เช่น ในรูปต่อไปนี้ จะช่วยให้แอปของคุณมีฟังก์ชันการทำงานที่มีประสิทธิภาพและใช้งานง่าย ดูข้อมูลเพิ่มเติมได้ที่ ลาก
รูปที่ 7 ลากและวางในอินเทอร์เฟซโครงสร้างไฟล์
รองรับสไตลัส
การรองรับสไตลัสเป็นสิ่งสำคัญสำหรับแอปวาดภาพและจดบันทึก มอบการสนับสนุนที่ดียิ่งขึ้น สำหรับ Chromebook และแท็บเล็ตที่มาพร้อมสไตลัสด้วยการใช้การโต้ตอบ ที่ปรับให้เหมาะกับการใช้งานอินพุตสไตลัส
โปรดคำนึงถึงความแตกต่างที่อาจเกิดขึ้น ในฮาร์ดแวร์สไตลัสที่แตกต่างกันเมื่อออกแบบการโต้ตอบด้วยสไตลัส ดูภาพรวมของ API สไตลัสได้ที่ ความเข้ากันได้ของอินพุตบนหน้าจอขนาดใหญ่
ทำให้เลย์เอาต์ปรับเปลี่ยนตามพื้นที่โฆษณา
ใช้พื้นที่หน้าจอที่แอปของคุณใช้ได้ให้เกิดประโยชน์สูงสุด ไม่ว่าสถานะภาพจะเป็นแบบใด (เต็มหน้าจอ แนวตั้ง แนวนอน หรือแบบหน้าต่าง) ตัวอย่างการใช้พื้นที่ที่ดีมีดังนี้
- สถาปัตยกรรมแอปแสดงผล
- จำกัดความยาวของข้อความและขนาดรูปภาพให้มีความกว้างสูงสุด
- ใช้พื้นที่ในแถบเครื่องมือของแอปให้เกิดประโยชน์มากขึ้น
- ปรับปรุงตำแหน่งของความสามารถในการใช้งาน UI โดยการปรับแอปให้เหมาะกับการใช้งานเมาส์แทนการใช้นิ้วหัวแม่มือ
- เพิ่มประสิทธิภาพขนาดของวิดีโอและรูปภาพ กำหนดชุดความกว้าง และความสูงสูงสุดสำหรับสื่อทั้งหมด รวมถึงเพิ่มความสามารถในการอ่านและการสแกน
- ใช้คลาสขนาดหน้าต่างและเลย์เอาต์แผงเพื่อใช้การออกแบบที่ปรับตามพื้นที่โฆษณา
นอกจากนี้ โปรดคำนึงถึงสิ่งต่อไปนี้ด้วย
- นำหรือลดความสำคัญของคอมโพเนนต์การเลื่อนแนวนอน
- หลีกเลี่ยง UI แบบโมดัลเต็มหน้าจอ ใช้ UI แบบอินไลน์ เช่น ตัวบ่งชี้ความคืบหน้าและ การแจ้งเตือน สำหรับการดำเนินการที่ไม่สำคัญทั้งหมด
- ใช้คอมโพเนนต์ UI ที่ได้รับการปรับปรุง เช่น ตัวเลือกเวลาและวันที่ ช่องข้อความ และ เมนูที่ออกแบบมาสำหรับเมาส์ แป้นพิมพ์ และหน้าจอขนาดใหญ่
- ใช้การแก้ไขในบรรทัด คอลัมน์เพิ่มเติม หรือ UI แบบโมดอลแทนกิจกรรมใหม่ สำหรับฟีเจอร์การแก้ไขขนาดเล็กถึงปานกลาง
- นำปุ่มการทำงานแบบลอย (FAB) ออกหรือแก้ไขเพื่อการไปยังส่วนต่างๆ ด้วยแป้นพิมพ์ที่ดีขึ้น โดยค่าเริ่มต้น FAB จะอยู่ในตำแหน่งสุดท้ายในการไปยังแท็บตามขวาง แต่ให้วางไว้เป็นอันดับแรกเนื่องจากเป็นการกระทำหลัก หรือ แทนที่ด้วยความสามารถระดับสูงกว่า
รูปที่ 8 ภาพจำลองเลย์เอาต์ที่ปรับเปลี่ยนตามอุปกรณ์บนหน้าจอขนาดโทรศัพท์และเดสก์ท็อป
เปลี่ยนรูปแบบการนำทาง
ปุ่มย้อนกลับระดับระบบเป็นรูปแบบที่สืบทอดมาจากรากฐานของอุปกรณ์พกพาของ Android ซึ่งเป็นรูปแบบที่ไม่เหมาะกับบริบทของเดสก์ท็อป
เมื่อแอปได้รับการปรับแต่งให้เหมาะกับสภาพแวดล้อมของแล็ปท็อปมากขึ้น ให้พิจารณา เปลี่ยนไปใช้รูปแบบการนำทางที่ลดความสำคัญของปุ่มย้อนกลับ อนุญาตให้ แอปจัดการสแต็กประวัติของตัวเองโดยระบุปุ่มย้อนกลับในแอป เส้นทางแบบ Breadcrumb หรือเส้นทางอื่นๆ เช่น ปุ่มปิดหรือปุ่มยกเลิก เป็นส่วนหนึ่งของ UI สำหรับหน้าจอขนาดใหญ่
คุณควบคุมได้ว่าจะให้แอปแสดงปุ่มย้อนกลับในหน้าต่างหรือไม่โดย
ตั้งค่ากำหนดภายในแท็ก
<activity>
การตั้งค่า true จะซ่อน
ปุ่มย้อนกลับ
<meta-data android:name="WindowManagerPreference:SuppressWindowControlNavigationButton" android:value="true" />
แก้ปัญหาเกี่ยวกับภาพตัวอย่างกล้อง
ปัญหาเกี่ยวกับกล้องอาจเกิดขึ้นเมื่อแอปทำงานได้เฉพาะในแนวตั้ง แต่ผู้ใช้เรียกใช้แอปบนหน้าจอแนวนอน ในกรณีนี้ การหมุนตัวอย่างหรือผลลัพธ์ที่บันทึกไว้อาจไม่ถูกต้อง
หากต้องการลดความซับซ้อนในการพัฒนากล้อง ให้ลองใช้ไลบรารี CameraX
ดูรายละเอียดเพิ่มเติมได้ที่คำอธิบายปัญหาเกี่ยวกับตัวอย่างกล้อง
จัดการการตั้งค่าอุปกรณ์
โปรดพิจารณาการตั้งค่าอุปกรณ์ต่อไปนี้สำหรับแอปที่ทำงานบน ChromeOS
เปลี่ยนระดับเสียง
อุปกรณ์ ChromeOS เป็นอุปกรณ์ที่มีระดับเสียงคงที่ ซึ่งหมายความว่าแอปที่เล่นเสียงจะมีตัวควบคุมระดับเสียงของตัวเอง ทำตามหลักเกณฑ์สำหรับ การทำงาน กับอุปกรณ์ที่มีระดับเสียงคงที่
เปลี่ยนความสว่างของหน้าจอ
คุณปรับความสว่างของอุปกรณ์ใน ChromeOS ไม่ได้ ระบบจะไม่สนใจการเรียกไปยัง
system settings และ
WindowManager.LayoutParams