Package
com.sec.app.RilErrorNotifier
RilNotifier
Guidance
Labelled "RilNotifier", this is a Samsung-signed system package with no launcher entry, recorded as not user-facing on every observation here. RIL is the Radio Interface Layer, the telephony layer AOSP documents in its core connectivity material, so the name places this app alongside the modem and service-mode tooling this site covers elsewhere. The reason to read this entry is that its declared permissions are far broader than the name suggests. Recorded here are android.permission.HARDWARE_TEST, which the platform manifest defines as allowing access to hardware peripherals and describes as intended only for hardware testing, at signature protection level and not for third-party use; ACCESS_CHECKIN_PROPERTIES, which the same manifest defines as read and write access to the properties table in the checkin database, to change values that get uploaded; and REBOOT, MODIFY_PHONE_STATE, READ_PRIVILEGED_PHONE_STATE, WRITE_APN_SETTINGS, WRITE_SETTINGS, CLEAR_APP_USER_DATA, MOUNT_UNMOUNT_FILESYSTEMS, CHANGE_CONFIGURATION, MODIFY_AUDIO_SETTINGS, BLUETOOTH_ADMIN and INTERNET. It also declares com.sec.android.app.factorymode.permission.KEYSTRING and com.sec.phone.permission.SEC_FACTORY_PHONE. A keystring is one of the star-and-hash sequences typed into the dialler to reach a hidden engineering screen, and that declaration is consistent with the keystring family covered by this site's notes on Service mode and DRParser Mode. It establishes what this package declares, not that it is itself reachable from the dialler: no source examined here demonstrates a runtime route. Samsung publishes no functional documentation for the package, so what it does with that set is not sourceable, and this note does not guess. The honest summary is that a component named as an error notifier declares the ability to reboot the device, rewrite APN settings and clear application data, and that the gap between the name and the declaration is itself the finding. Version note. Samsung's application lists record it at 1.0.0 on Android 9-era Galaxy S10+ firmware and at 1.0.0 on both Android 11-era lists examined here, and this site records 1.0.0 as both the oldest and the newest build observed, so the version string is static across every data point available and cannot be used to tell builds apart. The target SDK moves from 31 to 37 and the package is observed from API 28 through API 37. Nothing sourced suggests it has been superseded, modularised or default-disabled in a recent release. For Android Enterprise, EMM and kiosk use, treat it the same way as the rest of Samsung's engineering tooling. Its declared reach into APN settings, phone state and device reboot is exactly the sort of surface a dedicated or shared device should not expose, and where a build also makes engineering screens reachable from the dialler that compounds it. The practical control is the app allowlist: keep the dialler and other system apps out of a kiosk allowlist unless they are needed, then test the finished build by actively trying to escape it. In the Android Management API the documented lever is an application policy with installType BLOCKED, which the reference defines as the app being blocked and unable to install, and uninstalled if it was installed under a previous policy; the reference does not state what that does to a package preinstalled in the system image, so confirm the outcome on the device model in question. Samsung does not document what depends on it, so disabling is rated caution.
- core/res/AndroidManifest.xml (android.permission.HARDWARE_TEST, ACCESS_CHECKIN_PROPERTIES) - Android platform source →
- RIL refactoring (Radio Interface Layer) - Android Open Source Project →
- Galaxy S10+ LTE (G975F) application list - Samsung Knox CC Mode documentation →
- Galaxy S20 FE 5G (G781B) application list - Samsung Knox CC Mode documentation →
- Galaxy S20 Ultra 5G (G988W) application list - Samsung Knox CC Mode documentation →
- Policies resource (ApplicationPolicy installType) - Android Management API →
- How do I prevent users from escaping kiosk (lock task) mode? - Jason Bayton →
- Package provenance for com.sec.app.RilErrorNotifier - Android System App Database →
Package intelligence
Observed signing, permission, version and size signals from contributing devices - descriptive of that sample, not a verdict. These come from the v2 Package Search sync, which not every device has contributed to yet, so for some packages this detail is partial or not present at all.
- Signed by the device maker's own signing key (Samsung), so it is an OEM preinstall, but 2 different certificates appear across the fleet, so OEMs ship their own builds of it. It also signs the Android framework, so it is a platform-level key on its device(s). Inferred from the certificate appearing only on Samsung devices (508 packages, 10196 observations).
- Its largest observed manifest declares 19 permissions: 1 runtime (user-granted), 10 signature or system-level, 6 install-time and 2 vendor or uncatalogued. The signature/system share marks it as a privileged component, not an ordinary app.
- Never reported as user-facing, so it runs as a background or system component rather than an app the user opens.
Declared permissions (19)
Largest permission set observed for this package. Text is Android's own published description where one exists; platform permissions Android does not document show their granted protection level (in grey) instead; vendor or unknown constants show the name only.
| Permission | Description |
|---|---|
ACCESS_CHECKIN_PROPERTIES |
Signature or privileged system permission. |
ACCESS_NETWORK_STATE |
Allows the app to view information about network connections such as which networks exist and are connected. |
BLUETOOTH_ADMIN |
Allows the app to configure the local Bluetooth phone, and to discover and pair with remote devices. |
CHANGE_CONFIGURATION |
Signature or privileged system permission. |
CLEAR_APP_USER_DATA |
Signature-level system permission, for platform-signed apps. |
HARDWARE_TEST |
Signature-level system permission, for platform-signed apps. |
INTERNET |
Allows the app to create network sockets and use custom network protocols. The browser and other applications provide means to send data to the internet, so this permission is not required to send data to the internet. |
MODIFY_AUDIO_SETTINGS |
Allows the app to modify global audio settings such as volume and which speaker is used for output. |
MODIFY_PHONE_STATE |
Signature or privileged system permission. |
MOUNT_UNMOUNT_FILESYSTEMS |
Signature or privileged system permission. |
POST_NOTIFICATIONS |
Allows the app to show notifications |
READ_PRIVILEGED_PHONE_STATE |
Signature or privileged system permission. docs ↗ |
REBOOT |
Signature or privileged system permission. |
VIBRATE |
Allows the app to control the vibrator. |
WAKE_LOCK |
Allows the app to prevent the phone from going to sleep. |
WRITE_APN_SETTINGS |
Signature or privileged system permission. docs ↗ |
WRITE_SETTINGS |
Allows the app to modify the system's settings data. Malicious apps may corrupt your system's configuration. |
com.sec.android.app.factorymode.permission.KEYSTRING |
- |
com.sec.phone.permission.SEC_FACTORY_PHONE |
- |
Manage on devices
ADB commands for this package (the inverse of each is included so you can undo). Run from an authorised shell or wire the equivalent into your DPC. Verify on a test device first - this database doesn’t yet classify which packages are safe to change. --user 0 targets the current user; drop it (and use a privileged shell) to act device-wide.
/system, so Restore re-adds it (-k keeps app data)Seen on
Each record is a device profile (make + model + Android version). Each unique handset that syncs against a matching profile will increase the observations of a package, thereby increasing confidence that a package is expected to be on a device.
| OEM | Model | Android | Provenance | Observations | Last seen |
|---|---|---|---|---|---|
| Samsung | SM-A057G | Android 15 | OEM Samsung | 1 | 8 Aug 2026 |
| Samsung | SM-A125F | Android 12 | OEM Samsung | 1 | 21 Jan 2026 |
| Samsung | SM-A135F | Android 14 | OEM Samsung | 3 | 21 Jan 2026 |
| Samsung | SM-A137F | Android 14 | - | 1 | 17 Jan 2026 |
| Samsung | SM-A236B | Android 14 | OEM Samsung | 2 | 10 Apr 2026 |
| Samsung | SM-A266B | Android 15 | - | 2 | 21 Aug 2025 |
| Samsung | SM-A266B | Android 16 | - | 1 | 26 Jan 2026 |
| Samsung | SM-A346B | Android 15 | OEM Samsung | 1 | 27 Jul 2026 |
| Samsung | SM-A515F | Android 13 | - | 1 | 30 Jun 2025 |
| Samsung | SM-A528B | Android 13 | - | 1 | 19 Jun 2025 |
| Samsung | SM-A536B | Android 15 | - | 1 | 19 Jun 2025 |
| Samsung | SM-A536B | Android 16 | OEM Samsung | 1 | 29 Jul 2026 |
| Samsung | SM-A556B | Android 15 | - | 1 | 1 Jul 2025 |
| Samsung | SM-A566B | Android 16 | OEM Samsung | 3 | 12 Sep 2026 |
| Samsung | SM-F721B | Android 15 | - | 1 | 9 Jul 2025 |
| Samsung | SM-F766B | Android 16 | - | 1 | 11 Nov 2025 |
| Samsung | SM-F971B | Android 17 | OEM Samsung | 1 | 18 Sep 2026 |
| Samsung | SM-G766B | Android 15 | - | 1 | 17 Oct 2025 |
| Samsung | SM-G766B | Android 16 | OEM Samsung | 1 | 5 Sep 2026 |
| Samsung | SM-G780F | Android 13 | OEM Samsung | 1 | 29 Dec 2025 |
| Samsung | SM-G973U | Android 12 | OEM Samsung | 2 | 10 Jun 2026 |
| Samsung | SM-G991B | Android 15 | OEM Samsung | 1 | 19 Apr 2026 |
| Samsung | SM-M315F | Android 12 | - | 1 | 2 Feb 2026 |
| Samsung | SM-N950U1 | Android 9.0 | - | 1 | 20 Aug 2025 |
| Samsung | SM-N986B | Android 13 | - | 9 | 17 Jul 2025 |
| Samsung | SM-S721U | Android 15 | - | 5 | 5 Aug 2025 |
| Samsung | SM-S731B | Android 16 | OEM Samsung | 1 | 11 Aug 2026 |
| Samsung | SM-S906B | Android 15 | - | 1 | 2 Jun 2025 |
| Samsung | SM-S908U | Android 16 | OEM Samsung | 2 | 17 Sep 2026 |
| Samsung | SM-S921B | Android 15 | OEM Samsung | 2 | 22 Jul 2025 |
| Samsung | SM-S921B | Android 16 | OEM Samsung | 1 | 17 Sep 2026 |
| Samsung | SM-S921U | Android 15 | - | 1 | 19 Jun 2025 |
| Samsung | SM-S926B | Android 16 | OEM Samsung | 1 | 14 Apr 2026 |
| Samsung | SM-S928B | Android 16 | OEM Samsung | 2 | 12 Jun 2026 |
| Samsung | SM-S928U1 | Android 15 | - | 1 | 12 Sep 2025 |
| Samsung | SM-S931B | Android 15 | - | 1 | 20 Sep 2025 |
| Samsung | SM-S931B | Android 16 | - | 1 | 23 Nov 2025 |
| Samsung | SM-S936B | Android 16 | - | 1 | 18 Dec 2025 |
| Samsung | SM-S937B | Android 15 | - | 1 | 25 Aug 2025 |
| Samsung | SM-S938B | Android 15 | - | 2 | 25 Aug 2025 |
| Samsung | SM-S942B | Android 17 | OEM Samsung | 1 | 25 May 2026 |
| Samsung | SM-S948U | Android 16 | - | 1 | 9 Sep 2026 |
| Samsung | SM-T636B | Android 15 | - | 2 | 12 Oct 2025 |
| Samsung | SM-T976B | Android 13 | - | 1 | 21 Jul 2025 |
| Samsung | SM-X716B | Android 15 | - | 1 | 27 Jun 2025 |
Known labels
Locale-aware display names seen in the wild.
| Label | Locale | Seen |
|---|---|---|
| RilNotifier | en-gb | 24 |
| RilNotifier | en | 20 |
| RilNotifier | en-us | 19 |
| Errore | it-IT | 5 |
| Fout | nl-nl | 5 |
| Fehler | de-de | 3 |
| RilNotifier | en-nl | 3 |
| Erreur | fr-fr | 2 |
| Error | es-ES | 2 |
| Error | es-es | 2 |
| Errore | it-it | 2 |
| RilNotifier | es-us | 2 |
| RilNotifier | en-GB | 2 |
| RilNotifier | 2 | |
| Błąd | pl-PL | 1 |
| Błąd | pl-pl | 1 |
| Chyba | cs-cz | 1 |
| Chyba | cs-CZ | 1 |
| Erreur | fr-dz | 1 |
| Erreur | fr-FR | 1 |
| RilNotifier | en-US | 1 |
| RilNotifier | en-au | 1 |
| RilNotifier | es-US | 1 |
| Ошибка | ru-ru | 1 |