{"package_name":"com.android.safetyregulatoryinfo","label":"Safety \u0026 regulatory manual","device_count":17,"observation_count":85,"user_facing_count":0,"first_seen":"2025-05-04T16:17:28Z","last_seen":"2026-11-01T22:09:43Z","guidance":{"summary":"SafetyRegulatoryInfo, a small app from the Android Open Source Project whose English label on this site is \"Safety \u0026 regulatory manual\", with localised equivalents in other locales. On the AOSP main branch its manifest declares a single activity, SafetyAndRegulatoryInfoActivity, behind the android.settings.SHOW_SAFETY_AND_REGULATORY_INFO action, and no launcher entry. That activity loads an HTML file bundled in the app's own resources (raw/regulatory_content.html) into a WebView configured with network loads blocked and JavaScript disabled. The project's build file marks the app as product-specific. On that reading it is an offline viewer for regulatory text supplied with the device build.\n\nThe AOSP Settings app is the caller shown in the sources cited here. Its SafetyInfoPreferenceController probes for an activity handling that action in the package com.android.safetyregulatoryinfo, reports its \"safety_info\" preference as available only when one is found, and starts the activity when the preference is tapped.\n\nVersion note: the AOSP project lists release branches from android10-release through android17-release, and this site records the package on API levels 30 to 37. No change of role across those releases was identified; the activity behaviour described above was read from the main branch only and was not compared against older branches. In this site's sample it appears mostly on Google Pixel devices, plus one Huawei and one OnePlus model at API level 30, and every recorded signer is classified as a Google key.\n\nFor Android Enterprise, EMM and kiosk fleets no management role is identified in the sources cited here. Going by the Settings code above, disabling the package would be expected to hide the corresponding Settings entry on builds that use that controller, since the probe would no longer find the activity. Whether a device maker relies on this screen to meet a regulatory labelling obligation could not be sourced, which is the reason for caution rather than any technical dependency found.","safe_to_disable":"caution","sources":[{"title":"SafetyRegulatoryInfo AndroidManifest.xml (main) - Android Open Source Project","url":"https://android.googlesource.com/platform/packages/apps/SafetyRegulatoryInfo/+/refs/heads/main/AndroidManifest.xml"},{"title":"SafetyAndRegulatoryInfoActivity.kt (main) - Android Open Source Project","url":"https://android.googlesource.com/platform/packages/apps/SafetyRegulatoryInfo/+/refs/heads/main/src/com/android/safetyregulatoryinfo/SafetyAndRegulatoryInfoActivity.kt"},{"title":"SafetyRegulatoryInfo Android.bp (main) - Android Open Source Project","url":"https://android.googlesource.com/platform/packages/apps/SafetyRegulatoryInfo/+/refs/heads/main/Android.bp"},{"title":"Settings SafetyInfoPreferenceController.java (main) - Android Open Source Project","url":"https://android.googlesource.com/platform/packages/apps/Settings/+/refs/heads/main/src/com/android/settings/deviceinfo/SafetyInfoPreferenceController.java"},{"title":"platform/packages/apps/SafetyRegulatoryInfo branches and tags - Git at Google","url":"https://android.googlesource.com/platform/packages/apps/SafetyRegulatoryInfo/+refs"},{"title":"Package provenance for com.android.safetyregulatoryinfo - Android System App Database","url":"https://sysapps.bayton.org/api/packages/com.android.safetyregulatoryinfo"}],"last_verified":"2026-10-09T00:00:00Z"},"labels":[{"label":"Safety \u0026 regulatory manual","locale":"en-us","count":38},{"label":"Handleiding voor veiligheid en regelgeving","locale":"nl-NL","count":27},{"label":"Safety \u0026 regulatory manual","locale":"en","count":23},{"label":"Safety \u0026 regulatory manual","locale":"en-gb","count":11},{"label":"Safety \u0026 regulatory manual","locale":"","count":5},{"label":"Safety \u0026 regulatory manual","locale":"en-be","count":5},{"label":"Safety \u0026 regulatory manual","locale":"en-GB","count":4},{"label":"Safety \u0026 regulatory manual","locale":"en-au","count":4},{"label":"Handleiding voor veiligheid en regelgeving","locale":"nl-nl","count":3},{"label":"Safety \u0026 regulatory manual","locale":"en-jm","count":3},{"label":"Safety \u0026 regulatory manual","locale":"en-sg","count":3},{"label":"Safety \u0026 regulatory manual","locale":"en-ng","count":2},{"label":"Safety \u0026 regulatory manual","locale":"en-za","count":2},{"label":"Safety \u0026 regulatory manual","locale":"en-ca-u-fw-mon-mu-celsius","count":1},{"label":"Safety \u0026 regulatory manual","locale":"en-de","count":1},{"label":"Safety \u0026 regulatory manual","locale":"en-ie","count":1},{"label":"Safety \u0026 regulatory manual","locale":"en-nz","count":1},{"label":"Safety \u0026 regulatory manual","locale":"en-ph","count":1},{"label":"Safety \u0026 regulatory manual","locale":"en-tt","count":1},{"label":"Safety \u0026 regulatory manual","locale":"en-us-u-fw-mon-ms-ussystem-mu-fahrenhe","count":1},{"label":"ဘေးကင်းလုံခြုံမှုနှင့် ထိန်းသိမ်းခြင်းဆိုင်ရာ လမ်းညွှန်","locale":"my-MM","count":1},{"label":"ဘေးကင်းလုံခြုံမှုနှင့် ထိန်းသိမ်းခြင်းဆိုင်ရာ လမ်းညွှန်","locale":"my-mm","count":1}],"seen_on_pagination":{"paging_mode":"complete","limit":17,"offset":0,"has_more":false,"next_offset":null,"after":null,"next_after":null,"total":17},"seen_on":[{"device_id":1039,"make":"Google","model":"Pixel 10","os_api":"36","observation_count":1,"user_facing_count":0,"last_seen":"2026-06-05T10:10:22Z","provenance":{"classification":"google","sha256":"79a88bc7e730b392b55eedcd9ad723b4a6878156f9fb30ed7732d2e70bf207ac"}},{"device_id":325,"make":"Google","model":"Pixel 10 Pro","os_api":"36","observation_count":1,"user_facing_count":0,"last_seen":"2026-03-26T19:19:08Z","provenance":{"classification":"google","sha256":"d1cfb878deadeef6b105714cde398a3b7dece1d8bd0097aeb7544d775d55e760"}},{"device_id":358,"make":"Google","model":"Pixel 10 Pro","os_api":"37","observation_count":1,"user_facing_count":0,"last_seen":"2026-11-01T22:09:43Z","provenance":{"classification":"google","sha256":"d1cfb878deadeef6b105714cde398a3b7dece1d8bd0097aeb7544d775d55e760"}},{"device_id":63,"make":"Google","model":"Pixel 6","os_api":"31","observation_count":1,"user_facing_count":0,"last_seen":"2025-06-22T21:31:08Z"},{"device_id":203,"make":"Google","model":"Pixel 6","os_api":"36","observation_count":1,"user_facing_count":0,"last_seen":"2025-10-13T09:58:56Z"},{"device_id":9,"make":"Google","model":"Pixel 6 Pro","os_api":"35","observation_count":9,"user_facing_count":0,"last_seen":"2025-06-23T14:09:38Z"},{"device_id":313,"make":"Google","model":"Pixel 7","os_api":"33","observation_count":1,"user_facing_count":0,"last_seen":"2026-02-19T22:30:10Z","provenance":{"classification":"google","sha256":"563cdaa5b98bdf96f10acb6062a67d494743fede5aec4886eb78c3beed086f2f"}},{"device_id":318,"make":"Google","model":"Pixel 7 Pro","os_api":"36","observation_count":1,"user_facing_count":0,"last_seen":"2026-03-09T09:38:09Z","provenance":{"classification":"google","sha256":"eb35a9fe35adf991e691a4e627178849f0e889a3ac5e15f944cefd4ef027fd69"}},{"device_id":93,"make":"Google","model":"Pixel 8","os_api":"36","observation_count":4,"user_facing_count":0,"last_seen":"2026-06-03T19:01:11Z"},{"device_id":198,"make":"Google","model":"Pixel 8a","os_api":"35","observation_count":1,"user_facing_count":0,"last_seen":"2025-10-05T18:31:57Z"},{"device_id":6,"make":"Google","model":"Pixel 9 Pro XL","os_api":"36","observation_count":21,"user_facing_count":0,"last_seen":"2026-03-29T03:46:05Z","provenance":{"classification":"google","sha256":"e29ea622c1d9c7ab150fb210615c9b38500983e2325782877d73f29fb5168c9b"}},{"device_id":348,"make":"Google","model":"Pixel 9 Pro XL","os_api":"37","observation_count":2,"user_facing_count":0,"last_seen":"2026-10-26T00:10:46Z","provenance":{"classification":"google","sha256":"e29ea622c1d9c7ab150fb210615c9b38500983e2325782877d73f29fb5168c9b"}},{"device_id":47,"make":"Google","model":"Pixel 9a","os_api":"35","observation_count":1,"user_facing_count":0,"last_seen":"2025-06-15T16:13:40Z"},{"device_id":108,"make":"Google","model":"Pixel 9a","os_api":"36","observation_count":6,"user_facing_count":0,"last_seen":"2026-06-02T15:57:40Z","provenance":{"classification":"google","sha256":"d79526589104cca95d4c2e5cd342b6b9e217b419b3b69bb73f2071458766e5a7"}},{"device_id":3574,"make":"Google","model":"Pixel 9a","os_api":"37","observation_count":1,"user_facing_count":0,"last_seen":"2026-07-16T23:51:20Z"},{"device_id":6672,"make":"HUAWEI","model":"HRY-LX1T","os_api":"30","observation_count":1,"user_facing_count":0,"last_seen":"2026-09-04T05:58:22Z","provenance":{"classification":"google","sha256":"a40da80a59d170caa950cf15c18c454d47a39b26989d8b640ecd745ba71bf5dc"}},{"device_id":7,"make":"OnePlus","model":"OnePlus8Pro","os_api":"30","observation_count":32,"user_facing_count":0,"last_seen":"2026-10-21T22:04:52Z","provenance":{"classification":"google","sha256":"a40da80a59d170caa950cf15c18c454d47a39b26989d8b640ecd745ba71bf5dc"}}],"intelligence":{"insights":["Signed by Google's own signing key (the same key Google uses across devices), so it is a Google-provided preinstall that updates independently of the system image, though 7 different Google signing keys appear across the fleet.","Its largest observed manifest declares 2 permissions: 2 vendor or uncatalogued.","Never reported as user-facing, so it runs as a background or system component rather than an app the user opens."],"device_profiles":11,"signer_count":7,"signer_consistent":false,"max_permission_count":2,"min_size_bytes":30114,"max_size_bytes":565053,"min_target_sdk":29,"max_target_sdk":10000,"oldest_version":"11","newest_version":"17","has_third_party_preinstall":false,"genuine_third_party":false,"play_eligible_count":0,"signers":[{"sha256":"e29ea622c1d9c7ab150fb210615c9b38500983e2325782877d73f29fb5168c9b","classification":"google","observation_count":22,"makes":["Google"],"signs_framework":false,"global_make_count":1,"global_package_count":107,"global_observation_count":2178},{"sha256":"d1cfb878deadeef6b105714cde398a3b7dece1d8bd0097aeb7544d775d55e760","classification":"google","observation_count":21,"makes":["Google"],"signs_framework":false,"global_make_count":1,"global_package_count":109,"global_observation_count":2162},{"sha256":"eb35a9fe35adf991e691a4e627178849f0e889a3ac5e15f944cefd4ef027fd69","classification":"google","observation_count":6,"makes":["Google"],"signs_framework":false,"global_make_count":1,"global_package_count":96,"global_observation_count":559},{"sha256":"a40da80a59d170caa950cf15c18c454d47a39b26989d8b640ecd745ba71bf5dc","classification":"google","observation_count":2,"makes":["HUAWEI","OnePlus"],"signs_framework":false,"global_make_count":29,"global_package_count":87,"global_observation_count":466},{"sha256":"563cdaa5b98bdf96f10acb6062a67d494743fede5aec4886eb78c3beed086f2f","classification":"google","observation_count":1,"makes":["Google"],"signs_framework":false,"global_make_count":1,"global_package_count":89,"global_observation_count":89},{"sha256":"d79526589104cca95d4c2e5cd342b6b9e217b419b3b69bb73f2071458766e5a7","classification":"google","observation_count":1,"makes":["Google"],"signs_framework":false,"global_make_count":1,"global_package_count":96,"global_observation_count":96},{"sha256":"79a88bc7e730b392b55eedcd9ad723b4a6878156f9fb30ed7732d2e70bf207ac","classification":"google","observation_count":1,"makes":["Google"],"signs_framework":false,"global_make_count":1,"global_package_count":125,"global_observation_count":125}],"permissions":[{"permission":"android.permission.OTHER_SENSORS","official":false},{"permission":"com.android.safetyregulatoryinfo.DYNAMIC_RECEIVER_NOT_EXPORTED_PERMISSION","official":false}]},"previews":{"labels":{"kind":"preview","limit":60,"total":22,"truncated":false,"collection_url":"/api/packages/com.android.safetyregulatoryinfo/labels"}},"collections":{"labels":"/api/packages/com.android.safetyregulatoryinfo/labels","seen_on":"/api/packages/com.android.safetyregulatoryinfo/seen_on"}}
