การทดสอบ GTS ( GtsSafetyCenterTestCases
)
การทดสอบ GTS กำหนดข้อจำกัดในไฟล์การกำหนดค่า ดู อัปเดตไฟล์การกำหนดค่า อุปกรณ์จะได้รับการยกเว้นจากการทดสอบเหล่านี้หากอุปกรณ์ไม่รองรับศูนย์ความปลอดภัย
ข้อจำกัดมีดังนี้:
- ควรมีกลุ่มแหล่งที่มาของศูนย์ความปลอดภัยอย่างน้อยเจ็ดกลุ่ม ซึ่งควรคงอยู่ในสถานะไม่มีการแก้ไขหรือเป็นค่าเริ่มต้น ฟิลด์เฉพาะบางฟิลด์ เช่น ชื่อแหล่งที่มา สถานะการแสดงเริ่มต้น และการสรุป บางครั้งได้รับการสนับสนุนโดยสตริงที่ซ้อนทับได้และสามารถแก้ไขได้
สำหรับ
GoogleAppSecuritySources
:- อย่าลบหรือแก้ไขแหล่งที่มาด้านความปลอดภัย
GooglePlayProtect
- คุณสามารถลบหรือเปลี่ยนแหล่งที่มาด้านความปลอดภัย
GoogleAppProtectionService
ได้ หากมีอยู่:- มันจะต้องรองรับการบันทึก
- หากชื่อแพ็กเกจไม่เปลี่ยนแปลง จะต้องมี
initialDisplayState="hidden"
ใน Android 13 ใน Android 14 จะต้องเป็นissue-only-safety-source
แทน และdeduplicationGroup
จะต้องไม่เปลี่ยนแปลง - หากเปลี่ยนชื่อแพ็กเกจ จะต้องมีบทบาท
"android.app.role.SYSTEM_APP_PROTECTION_SERVICE"
; นอกจากนี้ใน Android 14 จะต้องไม่มีdeduplicationGroup
- อย่าลบหรือแก้ไขแหล่งที่มาด้านความปลอดภัย
สำหรับ
AndroidLockScreenSources
:- จำเป็นต้องมีอินสแตนซ์
summary
ของกลุ่ม และคุณสามารถแก้ไขได้ รวมถึงการซ้อนทับสตริง - ต้องมีแหล่งความปลอดภัยอย่างน้อยหนึ่งแหล่ง
- แหล่งที่มาด้านความปลอดภัยแรกมีวัตถุประสงค์เพื่อเป็นแหล่งที่มาที่ควบคุมการตั้งค่าหน้าจอล็อก และไม่ควรสามารถผลักดันปัญหาหรือรายการที่รุนแรงกว่า
SEVERITY_LEVEL_RECOMMENDATION
(maxSeverityLevel="300"
หรือสูงถึงรายการสีเหลืองหรือการ์ดคำเตือน) ใน Android 14deduplicationGroup
จะต้องไม่เปลี่ยนแปลง - แหล่งความปลอดภัยอื่นๆ มีวัตถุประสงค์เพื่อเป็นแหล่งที่มาที่เกี่ยวข้องกับกลไกการปลดล็อคไบโอเมตริกซ์ และควรมี
maxSeverityLevel="0"
- จำเป็นต้องมีอินสแตนซ์
ใน Android 13 ห้ามแก้ไข
GoogleAccountSources
,GoogleDeviceFinderSources
หรือAndroidAdvancedSources
ใน Android 14 คุณจะลบแหล่งที่มาใหม่บางส่วนที่นำมาใช้ในกลุ่มเหล่านี้ได้ (เช่น การสำรองและกู้คืนข้อมูล) และยังเพิ่มแหล่งที่มาแบบคงที่ใหม่ต่อท้ายกลุ่มAndroidAdvancedSources
ได้ด้วยสำหรับ
GoogleUpdateSources
:- คุณสามารถเปลี่ยน
intentAction
สำหรับGoogleSecurityUpdates
และสามารถแก้ไขได้ด้วยการซ้อนทับสตริง - ห้ามแก้ไข
GooglePlaySystemUpdate
- คุณสามารถเปลี่ยน
สำหรับ
AndroidPrivacySources
:- คุณสามารถเพิ่ม ลบ หรือแก้ไขแหล่งข้อมูลบางแห่งได้ ตราบใดที่แหล่งที่มานั้นเป็น
issue-only
- พวกเขาจะต้องเก็บ
packageName="com.google.android.permissioncontroller"
ไว้ - อย่าแก้ไขส่วนที่เหลือของแหล่งที่มา
AndroidPrivacySources
- คุณสามารถเพิ่ม ลบ หรือแก้ไขแหล่งข้อมูลบางแห่งได้ ตราบใดที่แหล่งที่มานั้นเป็น
สำหรับกลุ่มแหล่งความปลอดภัยที่เหลือ (ถ้ามี):
- กลุ่มไม่ควรมี
summary
หรือstatelessIconType
ซึ่งส่งผลให้มีกลุ่มSAFETY_SOURCES_GROUP_TYPE_RIGID
(SAFETY_SOURCES_GROUP_TYPE_STATELESS
ใน Android 14) - แต่ละแหล่งที่มาภายในแต่ละกลุ่มควรเป็นแบบคงที่หรือมี
maxSeverityLevel="0"
เช่น อนุญาตให้ส่งรายการสีเทาหรือสีเขียวแต่ไม่มีปัญหา
- กลุ่มไม่ควรมี
การทดสอบ CTS ( CtsSafetyCenterTestCases
)
เริ่มตั้งแต่ Android 13 เป็นต้นไป การทดสอบ CTS จะมีผลกับ OEM ทั้งหมดที่รองรับ PermissionController
การทดสอบไฟล์การกำหนดค่า ( XmlConfigTest
)
การทดสอบเหล่านี้ช่วยให้มั่นใจได้ว่า:
- ไฟล์การกำหนดค่า XML ที่แยกวิเคราะห์ตรงกับการกำหนดค่าที่แยกวิเคราะห์และเปิดเผยโดยศูนย์ความปลอดภัย และการแยกวิเคราะห์นี้สำเร็จ
- หากมีการดำเนินการตามเจตนา
android.settings.PRIVACY_ADVANCED_SETTINGS
ในไฟล์ XML การดำเนินการนี้จะต้องได้รับการแก้ไข - หากมีการดำเนินการตามเจตนา
android.settings.PRIVACY_CONTROLS
ในไฟล์ XML การดำเนินการนี้จะต้องได้รับการแก้ไข
การทดสอบ UI ( SafetyCenterActivityTest
)
การทดสอบเหล่านี้ช่วยให้มั่นใจได้ว่า:
- การดำเนินการตามเจตนา
android.intent.action.SAFETY_CENTER
จะแก้ไขและเปิดหน้าจอการตั้งค่า ความปลอดภัยและความเป็นส่วนตัว เมื่อเปิดใช้งานศูนย์ความปลอดภัย และหน้าจอการตั้งค่าเมื่อปิดใช้งานศูนย์ความปลอดภัย
การทดสอบ API ( SafetyCenterManagerTest
)
เป้าหมายของการทดสอบ SafetyCenterManagerTest API คือเพื่อให้แน่ใจว่า Safety Center API ทำงานตามที่ตั้งใจไว้
การทดสอบเหล่านี้ช่วยรับประกันสิ่งต่อไปนี้:
-
SafetyCenterManager.isSafetyCenterEnabled
ถูกควบคุมโดยแฟล็กDeviceConfig
ที่เกี่ยวข้อง - เมื่อปิดใช้งาน API ของศูนย์ความปลอดภัยจะไม่ดำเนินการ
- API ของศูนย์ความปลอดภัยจะใช้งานได้เมื่อมีการอนุญาตที่เกี่ยวข้องเท่านั้น
- สามารถให้ข้อมูลแก่ศูนย์ความปลอดภัยตามการกำหนดค่าพื้นฐานเท่านั้น
- เมื่อส่งข้อมูลไปยังศูนย์ความปลอดภัย ข้อมูลดังกล่าวจะแสดงตามนั้น
- API ตรงกับข้อกำหนดที่อธิบายไว้ใน การใช้ API แหล่งที่มาของศูนย์ความปลอดภัย เช่น พฤติกรรมการรีเฟรชหรือสแกนใหม่ การตั้งค่าหรือการล้างข้อมูล และการรายงานข้อผิดพลาด
- API ภายในที่เปิดเผยต่อ UI ทำงานได้อย่างถูกต้อง เช่น ข้อมูลถูกรวมเข้าด้วยกันอย่างเหมาะสมโดยศูนย์ความปลอดภัย และสามารถรีเฟรชข้อมูลได้
การทดสอบที่ไม่รองรับศูนย์ความปลอดภัย ( SafetyCenterUnsupportedTest
)
การทดสอบนี้ช่วยให้แน่ใจว่าศูนย์ความปลอดภัยถูกปิดใช้งานเมื่ออุปกรณ์ไม่รองรับเมื่อปิดใช้งานการสนับสนุนในไฟล์การกำหนดค่า XML ของเฟรมเวิร์ก
หากอุปกรณ์รองรับศูนย์ความปลอดภัย การทดสอบนี้จะไม่ทำงาน หากอุปกรณ์ไม่รองรับศูนย์ความปลอดภัย ระบบจะทำงานเฉพาะการทดสอบนี้และคลาสข้อมูลเท่านั้น
การทดสอบนี้รับประกันสิ่งต่อไปนี้:
- การดำเนินการตามเจตนาของ
android.intent.action.SAFETY_CENTER
จะเปิดหน้าจอการตั้งค่า -
SafetyCenterManager.isSafetyCenterEnabled
คืนค่าfalse
- API ของศูนย์ความปลอดภัยส่วนใหญ่ไม่ตอบสนองเมื่อมีการเรียก
การทดสอบคลาสข้อมูล ( SafetySourceDataTest
, SafetySourceIssueTest
ฯลฯ )
การทดสอบคลาสข้อมูล เช่น SafetySourceDataTest
และ SafetySourceIssueTest
ช่วยให้มั่นใจได้ว่าคลาสข้อมูลที่เปิดเผยโดยศูนย์ความปลอดภัยนั้นทำงานตามที่ตั้งใจไว้ เช่น SafetySourceData
, SafetySourceIssue
และคลาสภายในอื่นๆ ที่เกี่ยวข้อง
การทดสอบ MTS ( SafetyCenterFunctionalTestCases
และอื่น ๆ )
การทดสอบเหล่านี้ดำเนินการกับการอัปเดตหลักและใช้กับ OEM ทั้งหมดที่สนับสนุน PermissionController
ข้อกำหนดที่บังคับใช้โดยการทดสอบเหล่านี้อาจมีการเปลี่ยนแปลงในการอัปเดตหลัก
การทดสอบ API ( SafetyCenterManagerTest
)
การทดสอบเหล่านี้คล้ายคลึงกับการทดสอบ CTS SafetyCenterManagerTest
อย่างไรก็ตาม จะทดสอบข้อกำหนดที่อาจเปลี่ยนแปลงในการอัปเดตหลัก เช่น:
- การตรวจสอบเนื้อหาจริงของข้อมูลที่ส่งคืนโดย API ภายในที่เปิดเผยต่อ UI
การทดสอบ UI ( SafetyCenterActivityTest
, SafetyCenterStatusCardTest
, SafetyCenterQsActivityTest
ฯลฯ )
การทดสอบเหล่านี้ช่วยให้มั่นใจได้ว่า:
- การเปลี่ยนเส้นทางไปยังศูนย์ความปลอดภัยด้วยพารามิเตอร์เฉพาะจะทำงานตามที่ตั้งใจไว้ เช่น การเปลี่ยนเส้นทางไปยังปัญหาเฉพาะ ดู การเปลี่ยนเส้นทางไปยังศูนย์ความปลอดภัย
- UI จะแสดงสถานะความปลอดภัยที่ถูกต้อง
- UI ช่วยให้สามารถนำทางไปยังหน้าจอที่แยกจากกัน
- UI ช่วยให้แก้ไขปัญหาด้านความปลอดภัยได้โดยตรงจากหน้าจอศูนย์ความปลอดภัยเมื่อระบุโดย
SafetySourceIssue
- UI จะยุบการ์ดคำเตือนหลายใบไว้ในรายการเดียว และอนุญาตให้ขยายกลับเป็นการ์ดคำเตือนหลายใบได้
- ข้อมูลจะถูกรีเฟรชเมื่อเปิดหน้าศูนย์ความปลอดภัยสำหรับแหล่งที่มาของศูนย์ความปลอดภัยที่เกี่ยวข้อง
- ปุ่มสแกนใหม่จะปรากฏขึ้นภายใต้สถานการณ์เฉพาะเท่านั้น
- การแตะปุ่มสแกนซ้ำจะดึงข้อมูลใหม่
การทดสอบที่คล้ายกันนี้ดำเนินการสำหรับศูนย์ความปลอดภัย ดู สร้างไทล์การตั้งค่าด่วนแบบกำหนดเองสำหรับแอปของคุณ
กรณี Edge เพิ่มเติม เช่น สถานะข้อผิดพลาดและสถานะรอดำเนินการ
การทดสอบผู้ใช้หลายคน ( SafetyCenterMultiUsersTest
)
เป้าหมายของการทดสอบเหล่านี้คือเพื่อให้แน่ใจว่า API ทำงานอย่างเหมาะสมเมื่อมีการให้ข้อมูลสำหรับผู้ใช้หรือโปรไฟล์หลายราย โปรดดู ที่ให้ข้อมูลสำหรับผู้ใช้หลายรายและโปรไฟล์ การตั้งค่านี้ทำได้โดยใช้ไลบรารีภายในที่อำนวยความสะดวกในการตั้งค่าผู้ใช้และโปรไฟล์แยกกันบนอุปกรณ์โดยใช้ Bedstead
การทดสอบนี้รับประกันสิ่งต่อไปนี้:
- ข้อมูลที่เป็นของผู้ใช้จะถูกรวมเข้ากับโปรไฟล์ที่ได้รับการจัดการที่เกี่ยวข้อง หากมีอยู่
- เฉพาะแหล่งที่มาที่ทำเครื่องหมายด้วย
profile="all_profiles"
เท่านั้นที่สามารถให้ข้อมูลในโปรไฟล์ที่ได้รับการจัดการของผู้ใช้ - รายการใหม่จะถูกสร้างขึ้นสำหรับแต่ละโปรไฟล์ที่ได้รับการจัดการซึ่งเชื่อมโยงกับผู้ใช้
- ข้อมูลที่เป็นของผู้ใช้รายหนึ่งจะไม่รั่วไหลไปยังผู้ใช้ที่ไม่เกี่ยวข้องรายอื่น