تست های GTS ( GtsSafetyCenterTestCases
)
تست های GTS محدودیت هایی را بر روی فایل پیکربندی اعمال می کنند. به به روز رسانی فایل پیکربندی مراجعه کنید. اگر دستگاه از مرکز ایمنی پشتیبانی نکند، دستگاهی از این آزمایشها مستثنی است.
محدودیت ها به شرح زیر است:
- باید حداقل هفت گروه منبع مرکز ایمنی وجود داشته باشد که باید در حالت تغییر نیافته یا پیش فرض باقی بمانند. برخی از فیلدهای خاص مانند عناوین منابع، وضعیت نمایش اولیه و خلاصه گاهی اوقات توسط رشته های قابل پوشش پشتیبانی می شوند و می توان آنها را تغییر داد.
برای
GoogleAppSecuritySources
:- منبع ایمنی
GooglePlayProtect
را حذف یا تغییر ندهید. - میتوانید منبع ایمنی
GoogleAppProtectionService
را حذف یا تغییر دهید. اگر موجود باشد:- باید از ورود به سیستم پشتیبانی کند.
- اگر نام بسته تغییر نکرده باشد، باید در Android 13 دارای
initialDisplayState="hidden"
باشد. در Android 14، به جای آن باید یکissue-only-safety-source
باشد وdeduplicationGroup
باید بدون تغییر باقی بماند. - اگر نام بسته تغییر کند، باید نقش
"android.app.role.SYSTEM_APP_PROTECTION_SERVICE"
را داشته باشد. علاوه بر این در اندروید 14 نبایدdeduplicationGroup
داشته باشد.
- منبع ایمنی
برای
AndroidLockScreenSources
:- نمونه
summary
گروه مورد نیاز است و می توانید آن را تغییر دهید، از جمله با یک پوشش رشته. - حداقل باید یک منبع ایمنی وجود داشته باشد.
- اولین منبع ایمنی منبعی است که تنظیمات صفحه قفل را کنترل میکند و نباید بتواند مشکلات یا ورودیهای شدیدتر از
SEVERITY_LEVEL_RECOMMENDATION
(maxSeverityLevel="300"
یا تا کارتهای هشدار یا ورودی زرد) را تحت فشار قرار دهد. در Android 14،deduplicationGroup
باید بدون تغییر باقی بماند. - سایر منابع ایمنی منابع مرتبط با مکانیسم های باز کردن قفل بیومتریک هستند و باید دارای
maxSeverityLevel="0"
باشند.
- نمونه
در Android 13،
GoogleAccountSources
،GoogleDeviceFinderSources
، یاAndroidAdvancedSources
را تغییر ندهید. در اندروید 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 تجزیه شده با پیکربندی تجزیه و تحلیل شده توسط مرکز ایمنی مطابقت دارد و این تجزیه موفقیت آمیز است.
- اگر کنش intent
android.settings.PRIVACY_ADVANCED_SETTINGS
در فایل XML وجود دارد، این عمل باید برطرف شود. - اگر کنش intent
android.settings.PRIVACY_CONTROLS
در فایل XML وجود دارد، این عمل باید برطرف شود.
تستهای رابط کاربری ( SafetyCenterActivityTest
)
این تست ها تضمین می کنند:
- اقدام intent
android.intent.action.SAFETY_CENTER
هنگامی که مرکز ایمنی فعال است صفحه تنظیمات امنیت و حریم خصوصی را برطرف می کند و هنگامی که مرکز ایمنی غیرفعال است صفحه تنظیمات را باز می کند.
تست های API ( SafetyCenterManagerTest
)
هدف از تستهای SafetyCenterManagerTest API این است که اطمینان حاصل شود که APIهای Safety Center طبق برنامه کار میکنند.
این تست ها موارد زیر را تضمین می کند:
-
SafetyCenterManager.isSafetyCenterEnabled
توسط پرچمDeviceConfig
مرتبط کنترل می شود. - در صورت غیرفعال شدن، APIهای مرکز ایمنی غیرفعال است.
- APIهای Safety Center فقط زمانی قابل استفاده هستند که مجوزهای مربوطه حفظ شود.
- دادهها را میتوان فقط مطابق با پیکربندی اصلی به مرکز ایمنی ارائه کرد.
- هنگامی که داده ها به مرکز ایمنی ارائه می شود، مطابق با آن ظاهر می شود.
- APIها با مشخصات توضیح داده شده در استفاده از APIهای منبع مرکز ایمنی مطابقت دارند، به عنوان مثال، رفتار بازخوانی یا اسکن مجدد، تنظیم یا پاک کردن دادهها و گزارش خطاها.
- APIهای داخلی در معرض UI به درستی کار می کنند، به عنوان مثال، داده ها به طور مناسب توسط Safety Center ادغام می شوند و داده ها می توانند به روز شوند.
تست پشتیبانی نشده مرکز ایمنی ( SafetyCenterUnsupportedTest
)
این آزمایش تضمین میکند که وقتی دستگاه از آن پشتیبانی نمیکند، وقتی پشتیبانی در فایل پیکربندی فریمورک XML غیرفعال است، مرکز ایمنی غیرفعال میشود.
اگر دستگاه از Safety Center پشتیبانی میکند، این آزمایش اجرا نمیشود. اگر دستگاه از Safety Center پشتیبانی نمیکند، فقط این آزمایش و آزمونهای کلاسهای داده اجرا میشوند.
این تست موارد زیر را تضمین می کند:
- کنش intent
android.intent.action.SAFETY_CENTER
صفحه تنظیمات را باز می کند. -
SafetyCenterManager.isSafetyCenterEnabled
false
را برمی گرداند. - اکثر APIهای مرکز ایمنی هنگام فراخوانی پاسخ نمیدهند.
تست کلاس های داده ( SafetySourceDataTest
، SafetySourceIssueTest
، و غیره)
تستهای کلاس دادهها مانند SafetySourceDataTest
و SafetySourceIssueTest
اطمینان حاصل میکنند که کلاسهای دادهای که توسط Safety Center در معرض دید قرار میگیرند، به عنوان مثال SafetySourceData
، SafetySourceIssue
و سایر کلاسهای داخلی مرتبط کار میکنند.
تست های MTS ( SafetyCenterFunctionalTestCases
و موارد دیگر)
این آزمایشها در بهروزرسانیهای خط اصلی اجرا میشوند و برای همه OEMهایی که از PermissionController
پشتیبانی میکنند اعمال میشوند. الزامات اعمال شده توسط این آزمایشها ممکن است در بهروزرسانیهای خط اصلی تغییر کند.
تست های API ( SafetyCenterManagerTest
)
این تستها مشابه تست CTS SafetyCenterManagerTest
هستند، با این حال الزامات مورد نیاز را آزمایش میکنند که میتواند در بهروزرسانیهای خط اصلی تغییر کند، برای مثال:
- بررسی محتوای واقعی دادههای بازگردانده شده توسط APIهای داخلی در معرض UI
تستهای رابط کاربری ( SafetyCenterActivityTest
، SafetyCenterStatusCardTest
، SafetyCenterQsActivityTest
، و غیره)
این تست ها تضمین می کنند:
- هدایت مجدد به مرکز ایمنی با پارامترهای خاص همانطور که در نظر گرفته شده است، به عنوان مثال، تغییر مسیر به یک مشکل خاص عمل می کند. به تغییر مسیر به مرکز ایمنی مراجعه کنید.
- UI وضعیت ایمنی زیربنایی صحیح را نشان می دهد.
- رابط کاربری اجازه می دهد تا به صفحه های جداگانه پیمایش کنید.
- UI اجازه می دهد تا زمانی که توسط
SafetySourceIssue
مشخص شده است، مسائل ایمنی را مستقیماً از صفحه Safety Center حل کنید. - رابط کاربری چندین کارت اخطار را در یک مورد جمع میکند و اجازه میدهد آن را به چندین کارت هشدار بازگرداند.
- هنگامی که صفحه Safety Center برای منابع مربوطه Safety Center باز می شود، داده ها به روز می شوند.
- دکمه اسکن مجدد فقط در شرایط خاص ظاهر می شود.
- ضربه زدن روی دکمه اسکن مجدد داده های جدید را واکشی می کند.
آزمایش های مشابهی برای مرکز ایمنی انجام می شود. به ایجاد کاشی های سفارشی تنظیمات سریع برای برنامه خود مراجعه کنید
موارد لبه اضافی مانند حالت های خطا و حالت های معلق.
تست های چند کاربره ( SafetyCenterMultiUsersTest
)
هدف از این آزمایشها اطمینان از عملکرد مناسب API زمانی است که دادهها برای چندین کاربر یا نمایه ارائه میشود. به ارائه داده برای چندین کاربر و نمایه مراجعه کنید. این راهاندازی با استفاده از یک کتابخانه داخلی به دست میآید که تنظیم کاربران و پروفایلهای جداگانه را در دستگاه با استفاده از Bedstead تسهیل میکند.
این تست موارد زیر را تضمین می کند:
- داده های متعلق به یک کاربر در صورت وجود، با نمایه مدیریت شده مرتبط با آن ادغام می شوند.
- فقط منابعی که با
profile="all_profiles"
علامت گذاری شده اند می توانند داده ها را در نمایه مدیریت شده کاربر ارائه دهند. - یک ورودی جدید برای هر نمایه مدیریت شده مرتبط با یک کاربر ایجاد می شود.
- داده های متعلق به یک کاربر به کاربر نامرتبط دیگر درز نمی کند.
تست های GTS ( GtsSafetyCenterTestCases
)
تست های GTS محدودیت هایی را بر روی فایل پیکربندی اعمال می کنند. به به روز رسانی فایل پیکربندی مراجعه کنید. اگر دستگاه از مرکز ایمنی پشتیبانی نکند، دستگاهی از این آزمایشها مستثنی است.
محدودیت ها به شرح زیر است:
- باید حداقل هفت گروه منبع مرکز ایمنی وجود داشته باشد که باید در حالت تغییر نیافته یا پیش فرض باقی بمانند. برخی از فیلدهای خاص مانند عناوین منابع، وضعیت نمایش اولیه و خلاصه گاهی اوقات توسط رشته های قابل پوشش پشتیبانی می شوند و می توان آنها را تغییر داد.
برای
GoogleAppSecuritySources
:- منبع ایمنی
GooglePlayProtect
را حذف یا تغییر ندهید. - میتوانید منبع ایمنی
GoogleAppProtectionService
را حذف یا تغییر دهید. اگر موجود باشد:- باید از ورود به سیستم پشتیبانی کند.
- اگر نام بسته تغییر نکرده باشد، باید در Android 13 دارای
initialDisplayState="hidden"
باشد. در Android 14، به جای آن باید یکissue-only-safety-source
باشد وdeduplicationGroup
باید بدون تغییر باقی بماند. - اگر نام بسته تغییر کند، باید نقش
"android.app.role.SYSTEM_APP_PROTECTION_SERVICE"
را داشته باشد. علاوه بر این در اندروید 14 نبایدdeduplicationGroup
داشته باشد.
- منبع ایمنی
برای
AndroidLockScreenSources
:- نمونه
summary
گروه مورد نیاز است و می توانید آن را تغییر دهید، از جمله با یک پوشش رشته. - حداقل باید یک منبع ایمنی وجود داشته باشد.
- اولین منبع ایمنی منبعی است که تنظیمات صفحه قفل را کنترل میکند و نباید بتواند مشکلات یا ورودیهای شدیدتر از
SEVERITY_LEVEL_RECOMMENDATION
(maxSeverityLevel="300"
یا تا کارتهای هشدار یا ورودی زرد) را تحت فشار قرار دهد. در Android 14،deduplicationGroup
باید بدون تغییر باقی بماند. - سایر منابع ایمنی منابع مرتبط با مکانیسم های باز کردن قفل بیومتریک هستند و باید دارای
maxSeverityLevel="0"
باشند.
- نمونه
در Android 13،
GoogleAccountSources
،GoogleDeviceFinderSources
، یاAndroidAdvancedSources
را تغییر ندهید. در اندروید 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 تجزیه شده با پیکربندی تجزیه و تحلیل شده توسط مرکز ایمنی مطابقت دارد و این تجزیه موفقیت آمیز است.
- اگر کنش intent
android.settings.PRIVACY_ADVANCED_SETTINGS
در فایل XML وجود دارد، این عمل باید برطرف شود. - اگر کنش intent
android.settings.PRIVACY_CONTROLS
در فایل XML وجود دارد، این عمل باید برطرف شود.
تستهای رابط کاربری ( SafetyCenterActivityTest
)
این تست ها تضمین می کنند:
- اقدام intent
android.intent.action.SAFETY_CENTER
هنگامی که مرکز ایمنی فعال است صفحه تنظیمات امنیت و حریم خصوصی را برطرف می کند و هنگامی که مرکز ایمنی غیرفعال است صفحه تنظیمات را باز می کند.
تست های API ( SafetyCenterManagerTest
)
هدف از تستهای SafetyCenterManagerTest API این است که اطمینان حاصل شود که APIهای Safety Center طبق برنامه کار میکنند.
این تست ها موارد زیر را تضمین می کند:
-
SafetyCenterManager.isSafetyCenterEnabled
توسط پرچمDeviceConfig
مرتبط کنترل می شود. - در صورت غیرفعال شدن، APIهای مرکز ایمنی غیرفعال است.
- APIهای Safety Center فقط زمانی قابل استفاده هستند که مجوزهای مربوطه حفظ شود.
- دادهها را میتوان فقط مطابق با پیکربندی اصلی به مرکز ایمنی ارائه کرد.
- هنگامی که داده ها به مرکز ایمنی ارائه می شود، مطابق با آن ظاهر می شود.
- APIها با مشخصات توضیح داده شده در استفاده از APIهای منبع مرکز ایمنی مطابقت دارند، به عنوان مثال، رفتار بازخوانی یا اسکن مجدد، تنظیم یا پاک کردن دادهها و گزارش خطاها.
- APIهای داخلی در معرض UI به درستی کار می کنند، به عنوان مثال، داده ها به طور مناسب توسط Safety Center ادغام می شوند و داده ها می توانند به روز شوند.
تست پشتیبانی نشده مرکز ایمنی ( SafetyCenterUnsupportedTest
)
این آزمایش تضمین میکند که وقتی دستگاه از آن پشتیبانی نمیکند، وقتی پشتیبانی در فایل پیکربندی فریمورک XML غیرفعال است، مرکز ایمنی غیرفعال میشود.
اگر دستگاه از Safety Center پشتیبانی میکند، این آزمایش اجرا نمیشود. اگر دستگاه از Safety Center پشتیبانی نمیکند، فقط این آزمایش و آزمونهای کلاسهای داده اجرا میشوند.
این تست موارد زیر را تضمین می کند:
- کنش intent
android.intent.action.SAFETY_CENTER
صفحه تنظیمات را باز می کند. -
SafetyCenterManager.isSafetyCenterEnabled
false
را برمی گرداند. - اکثر APIهای مرکز ایمنی هنگام فراخوانی پاسخ نمیدهند.
تست کلاس های داده ( SafetySourceDataTest
، SafetySourceIssueTest
، و غیره)
تستهای کلاس دادهها مانند SafetySourceDataTest
و SafetySourceIssueTest
اطمینان حاصل میکنند که کلاسهای دادهای که توسط Safety Center در معرض دید قرار میگیرند، به عنوان مثال SafetySourceData
، SafetySourceIssue
و سایر کلاسهای داخلی مرتبط کار میکنند.
تست های MTS ( SafetyCenterFunctionalTestCases
و موارد دیگر)
این آزمایشها در بهروزرسانیهای خط اصلی اجرا میشوند و برای همه OEMهایی که از PermissionController
پشتیبانی میکنند اعمال میشوند. الزامات اعمال شده توسط این آزمایشها ممکن است در بهروزرسانیهای خط اصلی تغییر کند.
تست های API ( SafetyCenterManagerTest
)
این تستها مشابه تست CTS SafetyCenterManagerTest
هستند، با این حال الزامات مورد نیاز را آزمایش میکنند که میتواند در بهروزرسانیهای خط اصلی تغییر کند، برای مثال:
- بررسی محتوای واقعی دادههای بازگردانده شده توسط APIهای داخلی در معرض UI
تستهای رابط کاربری ( SafetyCenterActivityTest
، SafetyCenterStatusCardTest
، SafetyCenterQsActivityTest
، و غیره)
این تست ها تضمین می کنند:
- هدایت مجدد به مرکز ایمنی با پارامترهای خاص همانطور که در نظر گرفته شده است، به عنوان مثال، تغییر مسیر به یک مشکل خاص عمل می کند. به تغییر مسیر به مرکز ایمنی مراجعه کنید.
- UI وضعیت ایمنی زیربنایی صحیح را نشان می دهد.
- رابط کاربری اجازه می دهد تا به صفحه های جداگانه پیمایش کنید.
- UI اجازه می دهد تا زمانی که توسط
SafetySourceIssue
مشخص شده است، مسائل ایمنی را مستقیماً از صفحه Safety Center حل کنید. - رابط کاربری چندین کارت اخطار را در یک مورد جمع میکند و اجازه میدهد آن را به چندین کارت هشدار بازگرداند.
- هنگامی که صفحه Safety Center برای منابع مربوطه Safety Center باز می شود، داده ها به روز می شوند.
- دکمه اسکن مجدد فقط در شرایط خاص ظاهر می شود.
- ضربه زدن روی دکمه اسکن مجدد داده های جدید را واکشی می کند.
آزمایش های مشابهی برای مرکز ایمنی انجام می شود. به ایجاد کاشی های سفارشی تنظیمات سریع برای برنامه خود مراجعه کنید
موارد لبه اضافی مانند حالت های خطا و حالت های معلق.
تست های چند کاربره ( SafetyCenterMultiUsersTest
)
هدف از این آزمایشها اطمینان از عملکرد مناسب API زمانی است که دادهها برای چندین کاربر یا نمایه ارائه میشود. به ارائه داده برای چندین کاربر و نمایه مراجعه کنید. این راهاندازی با استفاده از یک کتابخانه داخلی به دست میآید که تنظیم کاربران و پروفایلهای جداگانه را در دستگاه با استفاده از Bedstead تسهیل میکند.
این تست موارد زیر را تضمین می کند:
- داده های متعلق به یک کاربر در صورت وجود، با نمایه مدیریت شده مرتبط با آن ادغام می شوند.
- فقط منابعی که با
profile="all_profiles"
علامت گذاری شده اند می توانند داده ها را در نمایه مدیریت شده کاربر ارائه دهند. - یک ورودی جدید برای هر نمایه مدیریت شده مرتبط با یک کاربر ایجاد می شود.
- داده های متعلق به یک کاربر به کاربر نامرتبط دیگر درز نمی کند.
تست های GTS ( GtsSafetyCenterTestCases
)
تست های GTS محدودیت هایی را بر روی فایل پیکربندی اعمال می کنند. به به روز رسانی فایل پیکربندی مراجعه کنید. اگر دستگاه از مرکز ایمنی پشتیبانی نکند، دستگاهی از این آزمایشها مستثنی است.
محدودیت ها به شرح زیر است:
- باید حداقل هفت گروه منبع مرکز ایمنی وجود داشته باشد که باید در حالت تغییر نیافته یا پیش فرض باقی بمانند. برخی از فیلدهای خاص مانند عناوین منابع، وضعیت نمایش اولیه و خلاصه گاهی اوقات توسط رشته های قابل پوشش پشتیبانی می شوند و می توان آنها را تغییر داد.
برای
GoogleAppSecuritySources
:- منبع ایمنی
GooglePlayProtect
را حذف یا تغییر ندهید. - میتوانید منبع ایمنی
GoogleAppProtectionService
را حذف یا تغییر دهید. اگر موجود باشد:- باید از ورود به سیستم پشتیبانی کند.
- اگر نام بسته تغییر نکرده باشد، باید در Android 13 دارای
initialDisplayState="hidden"
باشد. در Android 14، به جای آن باید یکissue-only-safety-source
باشد وdeduplicationGroup
باید بدون تغییر باقی بماند. - اگر نام بسته تغییر کند، باید نقش
"android.app.role.SYSTEM_APP_PROTECTION_SERVICE"
را داشته باشد. علاوه بر این در اندروید 14 نبایدdeduplicationGroup
داشته باشد.
- منبع ایمنی
برای
AndroidLockScreenSources
:- نمونه
summary
گروه مورد نیاز است و می توانید آن را تغییر دهید، از جمله با یک پوشش رشته. - حداقل باید یک منبع ایمنی وجود داشته باشد.
- اولین منبع ایمنی منبعی است که تنظیمات صفحه قفل را کنترل میکند و نباید بتواند مشکلات یا ورودیهای شدیدتر از
SEVERITY_LEVEL_RECOMMENDATION
(maxSeverityLevel="300"
یا تا کارتهای هشدار یا ورودی زرد) را تحت فشار قرار دهد. در Android 14،deduplicationGroup
باید بدون تغییر باقی بماند. - سایر منابع ایمنی منابع مرتبط با مکانیسم های باز کردن قفل بیومتریک هستند و باید دارای
maxSeverityLevel="0"
باشند.
- نمونه
در Android 13،
GoogleAccountSources
،GoogleDeviceFinderSources
، یاAndroidAdvancedSources
را تغییر ندهید. در اندروید 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 تجزیه شده با پیکربندی تجزیه و تحلیل شده توسط مرکز ایمنی مطابقت دارد و این تجزیه موفقیت آمیز است.
- اگر کنش intent
android.settings.PRIVACY_ADVANCED_SETTINGS
در فایل XML وجود دارد، این عمل باید برطرف شود. - اگر کنش intent
android.settings.PRIVACY_CONTROLS
در فایل XML وجود دارد، این عمل باید برطرف شود.
تستهای رابط کاربری ( SafetyCenterActivityTest
)
این تست ها تضمین می کنند:
- اقدام intent
android.intent.action.SAFETY_CENTER
هنگامی که مرکز ایمنی فعال است صفحه تنظیمات امنیت و حریم خصوصی را برطرف می کند و هنگامی که مرکز ایمنی غیرفعال است صفحه تنظیمات را باز می کند.
تست های API ( SafetyCenterManagerTest
)
هدف از تستهای SafetyCenterManagerTest API این است که اطمینان حاصل شود که APIهای Safety Center طبق برنامه کار میکنند.
این تست ها موارد زیر را تضمین می کند:
-
SafetyCenterManager.isSafetyCenterEnabled
توسط پرچمDeviceConfig
مرتبط کنترل می شود. - در صورت غیرفعال شدن، APIهای مرکز ایمنی غیرفعال است.
- APIهای Safety Center فقط زمانی قابل استفاده هستند که مجوزهای مربوطه حفظ شود.
- دادهها را میتوان فقط مطابق با پیکربندی اصلی به مرکز ایمنی ارائه کرد.
- هنگامی که داده ها به مرکز ایمنی ارائه می شود، مطابق با آن ظاهر می شود.
- APIها با مشخصات توضیح داده شده در استفاده از APIهای منبع مرکز ایمنی مطابقت دارند، به عنوان مثال، رفتار بازخوانی یا اسکن مجدد، تنظیم یا پاک کردن دادهها و گزارش خطاها.
- APIهای داخلی در معرض UI به درستی کار می کنند، به عنوان مثال، داده ها به طور مناسب توسط Safety Center ادغام می شوند و داده ها می توانند به روز شوند.
تست پشتیبانی نشده مرکز ایمنی ( SafetyCenterUnsupportedTest
)
این آزمایش تضمین میکند که وقتی دستگاه از آن پشتیبانی نمیکند، وقتی پشتیبانی در فایل پیکربندی فریمورک XML غیرفعال است، مرکز ایمنی غیرفعال میشود.
اگر دستگاه از Safety Center پشتیبانی میکند، این آزمایش اجرا نمیشود. اگر دستگاه از Safety Center پشتیبانی نمیکند، فقط این آزمایش و آزمونهای کلاسهای داده اجرا میشوند.
این تست موارد زیر را تضمین می کند:
- کنش intent
android.intent.action.SAFETY_CENTER
صفحه تنظیمات را باز می کند. -
SafetyCenterManager.isSafetyCenterEnabled
false
را برمی گرداند. - اکثر APIهای مرکز ایمنی هنگام فراخوانی پاسخ نمیدهند.
تست کلاس های داده ( SafetySourceDataTest
، SafetySourceIssueTest
، و غیره)
تستهای کلاس دادهها مانند SafetySourceDataTest
و SafetySourceIssueTest
اطمینان حاصل میکنند که کلاسهای دادهای که توسط Safety Center در معرض دید قرار میگیرند، به عنوان مثال SafetySourceData
، SafetySourceIssue
و سایر کلاسهای داخلی مرتبط کار میکنند.
تست های MTS ( SafetyCenterFunctionalTestCases
و موارد دیگر)
این آزمایشها در بهروزرسانیهای خط اصلی اجرا میشوند و برای همه OEMهایی که از PermissionController
پشتیبانی میکنند اعمال میشوند. الزامات اعمال شده توسط این آزمایشها ممکن است در بهروزرسانیهای خط اصلی تغییر کند.
تست های API ( SafetyCenterManagerTest
)
این تستها مشابه تست CTS SafetyCenterManagerTest
هستند، با این حال الزامات مورد نیاز را آزمایش میکنند که میتواند در بهروزرسانیهای خط اصلی تغییر کند، برای مثال:
- بررسی محتوای واقعی دادههای بازگردانده شده توسط APIهای داخلی در معرض UI
تستهای رابط کاربری ( SafetyCenterActivityTest
، SafetyCenterStatusCardTest
، SafetyCenterQsActivityTest
، و غیره)
این تست ها تضمین می کنند:
- هدایت مجدد به مرکز ایمنی با پارامترهای خاص همانطور که در نظر گرفته شده است، به عنوان مثال، تغییر مسیر به یک مشکل خاص عمل می کند. به تغییر مسیر به مرکز ایمنی مراجعه کنید.
- UI وضعیت ایمنی زیربنایی صحیح را نشان می دهد.
- رابط کاربری اجازه می دهد تا به صفحه های جداگانه پیمایش کنید.
- UI اجازه می دهد تا زمانی که توسط
SafetySourceIssue
مشخص شده است، مسائل ایمنی را مستقیماً از صفحه Safety Center حل کنید. - رابط کاربری چندین کارت اخطار را در یک مورد جمع میکند و اجازه میدهد آن را به چندین کارت هشدار بازگرداند.
- هنگامی که صفحه Safety Center برای منابع مربوطه Safety Center باز می شود، داده ها به روز می شوند.
- دکمه اسکن مجدد فقط در شرایط خاص ظاهر می شود.
- ضربه زدن روی دکمه اسکن مجدد داده های جدید را واکشی می کند.
آزمایش های مشابهی برای مرکز ایمنی انجام می شود. به ایجاد کاشی های سفارشی تنظیمات سریع برای برنامه خود مراجعه کنید
موارد لبه اضافی مانند حالت های خطا و حالت های معلق.
تست های چند کاربره ( SafetyCenterMultiUsersTest
)
هدف از این آزمایشها اطمینان از عملکرد مناسب API زمانی است که دادهها برای چندین کاربر یا نمایه ارائه میشود. به ارائه داده برای چندین کاربر و نمایه مراجعه کنید. این راهاندازی با استفاده از یک کتابخانه داخلی به دست میآید که تنظیم کاربران و پروفایلهای جداگانه را در دستگاه با استفاده از Bedstead تسهیل میکند.
این تست موارد زیر را تضمین می کند:
- داده های متعلق به یک کاربر در صورت وجود، با نمایه مدیریت شده مرتبط با آن ادغام می شوند.
- فقط منابعی که با
profile="all_profiles"
علامت گذاری شده اند می توانند داده ها را در نمایه مدیریت شده کاربر ارائه دهند. - یک ورودی جدید برای هر نمایه مدیریت شده مرتبط با یک کاربر ایجاد می شود.
- داده های متعلق به یک کاربر به کاربر نامرتبط دیگر درز نمی کند.