โปรแกรมตรวจสอบชุดเครื่องมือทดสอบความเข้ากันได้ของ Android (CTS Verifier) จะช่วยเสริม ชุดเครื่องมือทดสอบความเข้ากันได้ (CTS) แม้ว่า CTS จะตรวจสอบ API และฟังก์ชันที่ ทำให้เป็นอัตโนมัติได้ แต่ CTS Verifier จะมีการทดสอบสำหรับ API และฟังก์ชันที่ ทดสอบในอุปกรณ์แบบอยู่กับที่ไม่ได้หากไม่มีการป้อนข้อมูลหรือการวางตำแหน่งด้วยตนเอง เช่น คุณภาพเสียง หน้าจอสัมผัส มาตรความเร่ง และกล้อง
ข้อกำหนด
ก่อนเรียกใช้ CTS Verifier โปรดตรวจสอบว่าคุณมีอุปกรณ์ต่อไปนี้
- อุปกรณ์ที่ใช้ Android ซึ่งได้รับการยืนยันความเข้ากันได้ของ Android API โดย ผ่าน CTS นี่คืออุปกรณ์ภายใต้การทดสอบ (DUT)
- คอมพิวเตอร์ Linux ที่มีพอร์ตที่รองรับ USB 2.0 การเชื่อมต่อทั้งหมดกับ DUT จะผ่านพอร์ตนี้
- อุปกรณ์ที่ 2 ที่ใช้ Android ซึ่งมีบลูทูธ, Wi-Fi Direct, Wi-Fi Aware, UWB (หาก DUT รองรับ UWB) และการจำลองบัตรโฮสต์ NFC (HCE) ที่เข้ากันได้
- เราเตอร์ Wi-Fi ที่กำหนดค่าด้วยชื่อและรหัสผ่านของจุดเข้าใช้งาน เราเตอร์ ควรยกเลิกการเชื่อมต่ออินเทอร์เน็ตได้โดยไม่ต้องปิดเครื่อง
นอกจากนี้ โปรดเตรียมขาตั้งกล้อง ที่วางอุปกรณ์ และระยะทางที่วัดไว้ล่วงหน้า ซึ่งจำเป็นสำหรับการทดสอบการวัดระยะทาง (ความใกล้เคียง) สำหรับ UWB, Wi-Fi NAN และ RSSI ของบลูทูธ ดูรายละเอียดได้ที่ การปรับเทียบการตรวจหาบุคคล
ข้อกำหนด UICC สำหรับการทดสอบ NFC
CTS Verifier มีกรณีทดสอบ NFC ต่อไปนี้
- ฟิลด์ออฟ (ใช้ข้อมูลธุรกรรมจาก 0x54)
- ยกเลิกการเลือก (ใช้ข้อมูลธุรกรรมจาก 0x52)
- คำสั่ง HCI (0025000000) (ใช้ข้อมูลธุรกรรมจาก 0x02)
การทดสอบเหตุการณ์ธุรกรรมต้องใช้อุปกรณ์ 2 เครื่อง โดยเครื่องหนึ่งต้องมี UICC ของ SecureElement ที่มีกฎการเข้าถึงต่อไปนี้
- แฮชของ APK ของ CtsVerifier: 61:ED:37:7E:85:D3:86:A8:DF:EE:6B:86:4B:D8:5B:0B:FA:A5:AF:81
- ตัวระบุแอปพลิเคชันที่ได้รับอนุญาต (AID) สำหรับการเข้าถึงกิจกรรม NFC: 0xA000000476416E64726F696443545341
ในส่วนของโปรแกรมจำลอง เราคาดว่าเหตุการณ์ธุรกรรมจะพุชกิจกรรมที่เกี่ยวข้อง ไปที่เบื้องหน้า
ตั้งค่า
เปลี่ยนโหมดการนำทางของระบบในอุปกรณ์ทดสอบเป็นโหมด 3 ปุ่มโดยทำดังนี้
- เปิดการตั้งค่า
- ไปที่ระบบ > ท่าทางสัมผัส > การนำทางของระบบ
- เลือกโหมดการนำทางแบบปุ่มใดก็ได้ โดยควรเลือกโหมด 3 ปุ่ม หากมี
วิธีตั้งค่าสภาพแวดล้อมการทดสอบ CTS Verifier
ในคอมพิวเตอร์ Linux ให้ทำดังนี้
- เรียกใช้คำสั่งต่อไปนี้ก่อนติดตั้ง CTS Verifier เพื่ออนุญาต การเข้าถึงอินเทอร์เฟซที่ไม่ใช่ SDK
adb shell settings put global hidden_api_policy 1ติดตั้ง Android Studio
ดาวน์โหลด APK ของ CTS Verifier สำหรับ Android เวอร์ชันที่จะทดสอบ
เชื่อมต่อ DUT กับคอมพิวเตอร์ Linux
จากเทอร์มินัลในคอมพิวเตอร์ Linux ให้ติดตั้ง
CtsVerifier.apkใน DUT โดยทำดังนี้adb install -r -g CtsVerifier.apkสำหรับ Android 10 ขึ้นไป ให้เรียกใช้คำสั่งต่อไปนี้ เพื่อให้สิทธิ์แก่แอปในการสร้างรายงาน
adb shell appops set com.android.cts.verifier android:read_device_identifiers allowสำหรับ Android 11 ขึ้นไป ให้เรียกใช้คำสั่งต่อไปนี้ เพื่ออนุญาตให้บันทึกรายงานในไดเรกทอรีที่กำหนดเองภายใต้ ไดเรกทอรีระดับบนสุดภายนอกของอุปกรณ์
adb shell appops set com.android.cts.verifier MANAGE_EXTERNAL_STORAGE 0สำหรับ Android 13 ขึ้นไป ให้เรียกใช้คำสั่งต่อไปนี้ เพื่ออนุญาตการเข้าถึง API สำหรับทดสอบสำหรับ CTS Verifier
adb shell am compat enable ALLOW_TEST_API_ACCESS com.android.cts.verifierสำหรับ Android 14 ขึ้นไป ให้เรียกใช้คำสั่งต่อไปนี้ เพื่อให้สิทธิ์แก่แอปในการเปิดหน้าจอ
adb shell appops set com.android.cts.verifier TURN_SCREEN_ON 0ตรวจสอบว่า DUT ได้ตั้งค่าวันที่และเวลาของระบบอย่างถูกต้อง
เรียกใช้โปรแกรมตรวจสอบ CTS
เปิดแอปโปรแกรมตรวจสอบ CTS โดยแตะไอคอนโปรแกรมตรวจสอบ CTS ใน DUT
รูปที่ 1 ไอคอนโปรแกรมตรวจสอบ CTS
แอปจะแสดงชุดการทดสอบหลายชุดที่พร้อมสำหรับการยืนยันด้วยตนเอง
รูปที่ 2 เมนูการทดสอบของโปรแกรมตรวจสอบ CTS
การทดสอบแต่ละครั้งจะมีชุดองค์ประกอบทั่วไปที่ด้านล่างของหน้าจอ
รูปที่ 3 ทดสอบหน้าจอโดยไฮไลต์องค์ประกอบการทดสอบทั่วไป
- ผ่าน (✓) แตะหาก DUT เป็นไปตามข้อกำหนดการทดสอบตามวิธีการในข้อมูล
- ข้อมูล (?) แตะเพื่อแสดงวิธีการทดสอบ และจะปรากฏขึ้นโดยอัตโนมัติ เมื่อเปิดการทดสอบเป็นครั้งแรก
- ไม่ผ่าน (!): แตะหาก DUT ไม่เป็นไปตามข้อกำหนดในการทดสอบตามคำแนะนำในข้อมูล
การทดสอบบางอย่าง เช่น โหมดอุปกรณ์เสริม USB และการทดสอบการปรับเทียบกล้อง ต้องมีการตั้งค่าการทดสอบและวิธีการเพิ่มเติมตามที่ระบุไว้ในส่วนต่อไปนี้
ทดสอบโหมดอุปกรณ์เสริม USB สำหรับ 8.0 ขึ้นไป
รูปที่ 4 ขั้นตอนการทดสอบอุปกรณ์เสริม USB สำหรับ 8.0 และ สูงกว่า
รูปที่ 5 การทดสอบโหมดอุปกรณ์เสริม USB สำหรับ 8.0 ขึ้นไป
ทดสอบโหมดอุปกรณ์เสริม USB สำหรับ 7.x และต่ำกว่า
การทดสอบอุปกรณ์เสริม USB ต้องใช้คอมพิวเตอร์ Linux เพื่อเรียกใช้โปรแกรมเครื่องเดสก์ท็อป USB (โฮสต์)
- เชื่อมต่อ DUT กับคอมพิวเตอร์ Linux
ในคอมพิวเตอร์ ให้เรียกใช้โปรแกรม
cts-usb-accessoryจากแพ็กเกจ CTS Verifier ดังนี้./cts-usb-accessoryรอให้กล่องโต้ตอบปรากฏบน DUT แล้วแตะตกลง
รูปที่ 6 การทดสอบอุปกรณ์เสริม USB
ไปที่การทดสอบอุปกรณ์เสริม USB ในแอปพลิเคชัน CTS Verifier บน DUT
ตรวจสอบเอาต์พุตจากคอนโซลในคอมพิวเตอร์ ตัวอย่างเอาต์พุต
CTS USB Accessory Tester Found possible Android device (413c:2106) - attempting to switch to accessory mode... Failed to read protocol versionfigure3 Found Android device in accessory mode (18d1:2d01)... [RECV] Message from Android device #0 [SENT] Message from Android accessory #0 [RECV] Message from Android device #1 [SENT] Message from Android accessory #1 [RECV] Message from Android device #2 [SENT] Message from Android accessory #2 [RECV] Message from Android device #3 [SENT] Message from Android accessory #3 [RECV] Message from Android device #4 [SENT] Message from Android accessory #4 [RECV] Message from Android device #5 [SENT] Message from Android accessory #5 [RECV] Message from Android device #6 [SENT] Message from Android accessory #6 [RECV] Message from Android device #7 [SENT] Message from Android accessory #7 [RECV] Message from Android device #8 [SENT] Message from Android accessory #8 [RECV] Message from Android device #9 [SENT] Message from Android accessory #9 [RECV] Message from Android device #10 [SENT] Message from Android accessory #10
ปรับเทียบขอบเขตการมองเห็นของกล้อง
ใช้ขั้นตอนการปรับเทียบมุมมองเพื่อกำหนดมุมมองของอุปกรณ์อย่างรวดเร็วด้วยความแม่นยำปานกลาง
ตั้งค่าสภาพแวดล้อมการทดสอบ
- พิมพ์ไฟล์เป้าหมาย PDF รูปแบบการปรับเทียบบนกระดาษขนาด 11" x 17" หรือ A3
- ติดลวดลายที่พิมพ์บนแผ่นรองที่แข็ง
จัดวางอุปกรณ์กล้องและเป้าหมายที่พิมพ์ออกมาดังที่แสดงใน แผนภาพต่อไปนี้
รูปที่ 7 เป้าหมายที่พิมพ์ของกล้อง
กำหนดความกว้างเป้าหมาย
- วัดระยะห่าง (เป็นเซนติเมตร) ระหว่างเส้นทึบบน รูปแบบเป้าหมายเพื่อพิจารณาความไม่แม่นยำในการพิมพ์ (~38 ซม.)
- เริ่มแอปพลิเคชันการปรับเทียบ
- กดปุ่มตั้งค่า แล้วเลือกระยะทางของเครื่องหมาย
- วัดและป้อนระยะทางไปยังรูปแบบเป้าหมาย (~100 ซม.)
- กดปุ่มย้อนกลับเพื่อกลับไปที่ตัวอย่างการปรับเทียบ
ตรวจสอบว่าวางอุปกรณ์และเป้าหมายตามที่แสดงในรูป และป้อน ระยะทางที่ถูกต้องลงในกล่องโต้ตอบการตั้งค่า ตัวอย่างจะแสดงรูปภาพที่มีเส้นแนวตั้งซ้อนทับอยู่ โดยเส้นนี้ควรอยู่ในแนวเดียวกับเส้นกึ่งกลางของรูปแบบเป้าหมาย คุณใช้ตารางกริดโปร่งใสกับ เส้นแนวตั้งอื่นๆ เพื่อยืนยันว่าแกนแสงตั้งฉากกับ เป้าหมาย
เรียกใช้การทดสอบการปรับเทียบ
- เลือกความละเอียดของรูปภาพ (ใช้ตัวเลือกที่ด้านซ้ายล่าง) แล้วแตะหน้าจอเพื่อถ่ายรูป การทดสอบจะเข้าสู่โหมดการปรับเทียบและ แสดงรูปภาพที่มีเส้นแนวตั้ง 2 เส้นซ้อนทับบนรูปภาพ
- พิจารณาความแม่นยำ
- หากเส้นตรงตรงกับเส้นแนวตั้งในรูปแบบเป้าหมายภายใน ไม่กี่เซนติเมตร แสดงว่าฟิลด์มุมมองที่รายงานสำหรับความละเอียดที่เลือก ถูกต้อง
- หากเส้นไม่ตรงกัน แสดงว่าฟิลด์มุมมองที่รายงานไม่ถูกต้อง หากต้องการแก้ไข ให้ปรับแถบเลื่อนที่ด้านล่างของหน้าจอจนกว่า ภาพซ้อนทับจะตรงกับรูปแบบเป้าหมายมากที่สุด เมื่อ ภาพซ้อนทับและรูปภาพรูปแบบเป้าหมายอยู่ในแนวเดียวกัน ฟิลด์ มุมมองที่แสดงจะใกล้เคียงกับค่าที่ถูกต้อง ฟิลด์ที่รายงานของ มุมมองควรอยู่ภายใน 2 องศาของค่าการปรับเทียบ
- กดปุ่มย้อนกลับ แล้วทำการทดสอบการปรับเทียบซ้ำสำหรับความละเอียดของรูปภาพทั้งหมดที่ DUT รองรับ
เรียกใช้โปรแกรมตรวจสอบ CTS สำหรับโหมดอื่น
ตั้งแต่ CTS 10 R6 และ CTS 11 R2 เป็นต้นไป CTS Verifier จะรองรับการทดสอบ ที่จำเป็นสำหรับอุปกรณ์ที่มีโหมดอื่น หรือสำหรับอุปกรณ์ที่มีโหมดหน้าจอมากกว่า 1 โหมด
ที่ด้านบนของมุมมองรายการหลักใน CTS Verifier จะมีปุ่มที่ช่วยให้ผู้ใช้สลับระหว่างโหมดการแสดงผลแบบกางและพับได้ CTS Verifier จะแสดง การทดสอบที่จำเป็นสำหรับโหมดการแสดงผลที่เลือก หากต้องการเรียกใช้โหมดสำรองใน CTS Verifier ผู้ใช้ควรเปลี่ยนปุ่มเป็นโหมดการแสดงผลที่เหมาะสมและเรียกใช้รายการการทดสอบที่แสดง
รูปที่ 8 สวิตช์เปิด/ปิดโปรแกรมตรวจสอบ CTS
ระบบจะบันทึกผลการทดสอบที่พับไว้ในรายงานเดียวกันกับการทดสอบที่กางออก หากต้องการระบุผลการทดสอบแต่ละรายการที่มาจากชุดการทดสอบ ระบบจะเพิ่ม คำต่อท้ายลงในชื่อการทดสอบแต่ละรายการในโหมดพับ
<Test result="fail" name="com.android.cts.verifier.deskclock.DeskClockTestsActivity[folded]">
<RunHistory subtest="CREATE_ALARM[folded]">
<Run start="1594176663973" end="1594176665841" isAutomated="false" />
</RunHistory>
</Test>
ส่งออกผลลัพธ์
หลังจากทำการทดสอบทั้งหมดเสร็จแล้ว คุณจะบันทึกผลลัพธ์เป็นรายงานและดาวน์โหลดลงในคอมพิวเตอร์ได้ ระบบจะประทับเวลาชื่อรายงานโดยอัตโนมัติตามเวลาของระบบ DUT
หากต้องการบันทึกผลการทดสอบ ให้แตะไอคอนบันทึก (ดิสก์) ที่ด้านบนของรายการ หมวดหมู่การทดสอบ
รอให้กล่องโต้ตอบแสดงเส้นทางไปยังรายงานที่บันทึกไว้ (เช่น
/sdcard/verifierReports/ctsVerifierReport-date-time.zip) จากนั้น บันทึกเส้นทางเชื่อมต่อ DUT กับคอมพิวเตอร์ Linux
จากการติดตั้ง Android SDK ในคอมพิวเตอร์ Linux ให้ดาวน์โหลดรายงาน จากอุปกรณ์ที่เชื่อมต่อโดยใช้
adb shell content readหรือadb pull CTSVerifierReportPathสำหรับ Android 7.x ขึ้นไป ให้ดาวน์โหลดรายงานทั้งหมดโดยใช้คำสั่งต่อไปนี้
adb pull /sdcard/verifierReportsสำหรับ Android 6.0 และต่ำกว่า ให้ดาวน์โหลดรายงานทั้งหมดโดยใช้คำสั่งต่อไปนี้
adb pull /mnt/sdcard/ctsVerifierReports/สำหรับ Android 10 ขึ้นไป หากต้องการใช้ Automotive และอุปกรณ์ที่ทำงานในฐานะผู้ใช้รอง ให้ดาวน์โหลดรายงานล่าสุด โดยใช้คำสั่งต่อไปนี้
adb shell content read --user <var>CURRENT_USER</var> --uri content://com.android.cts.verifier.testresultsprovider/reports/latest > report.zipวิธีแสดงรายงานทั้งหมดที่พร้อมใช้งานในอุปกรณ์ที่เชื่อมต่อ
adb shell content query --user CURRENT_USER --uri content://com.android.cts.verifier.testresultsprovider/reports ``` To download a report from the list, you can specify the Row ID or filename. For example: ```shell adb shell content read --user CURRENT_USER --uri content://com.android.cts.verifier.testresultsprovider/reports/0 > report.zip ``` ```shell adb shell content read --user CURRENT_USER --uri content://com.android.cts.verifier.testresultsprovider/reports ctsVerifierReport-date-time.zip > report.zip ```
หากต้องการล้างผลการทดสอบที่ผ่านหรือไม่ผ่าน ให้เลือกผลการทดสอบในแอป CTS Verifier แล้วเลือกเมนู > ล้าง