{"package_name":"com.android.networkstack.inprocess.overlay","label":"NetworkStackInProcessResOverlay","device_count":25,"observation_count":27,"user_facing_count":0,"first_seen":"2025-05-15T11:09:01Z","last_seen":"2026-10-25T04:45:21Z","guidance":{"summary":"A Runtime Resource Overlay (RRO) whose name pairs it with the in-process build of Android's network stack. It is configuration rather than an app: an RRO changes the resource values of a target package at runtime without altering the target's code. In this site's sample it has no launcher entry in any observation, is between about 8.5 KB and 16.7 KB in size, and is labelled NetworkStackInProcessResOverlay on most devices and NetworkStackOverlayGo on a few.\n\nThe in-process network stack is an AOSP build variant. Alongside the updatable NetworkStack module, the NetworkStack source defines InProcessNetworkStack, described in its build file as a \"non-updatable network stack running in the system server process for devices not using the module\". It is a replacement for NetworkStack, is signed with the platform certificate, and its manifest declares the package name com.android.networkstack.inprocess running in the system process. The AOSP change that made it override NetworkStack explains the purpose: it avoids shipping both APKs on Android Go devices. This overlay's package name is that package name with \".overlay\" appended, which is the same naming pattern as com.android.networkstack.overlay documented separately on this site, so the natural reading is that it carries a build's NetworkStack configuration for the in-process variant. That is an inference from the naming: this site records a package's own name rather than the target declared inside its manifest, so what a given copy targets cannot be confirmed from here. The values an overlay of this kind may set are those in the module's NetworkStackConfig overlayable, such as the captive portal probe URLs and the default DNS servers used by the DHCP client.\n\nVersion note: the in-process variant does not exist on every AOSP release. InProcessNetworkStack and its manifest are present in the android15-release branch of the NetworkStack source and absent from the android16-release branch. This overlay is nonetheless observed here on devices from API 30 through API 36, with version names running from \"12\" to \"14\". Whether a copy seen on a newer release still has a target to configure, or is simply carried forward in the device image, could not be sourced.\n\nWhere signer data is recorded here, every key is classified as an OEM key that also signs the framework on its device (Motorola, Xiaomi, vivo, OPPO, NUU and ANT DAO Technology), which fits an overlay built into each device image, and the sample is weighted towards budget and ODM-built hardware. The only permission it declares is POST_NOTIFICATIONS, which a code-free overlay has no obvious use for; no source consulted accounts for it.\n\nFor Android Enterprise, EMM and kiosk use it has no role in enrolment or policy. Removing it does not harden anything: on a build that uses the in-process stack it would remove the build's connectivity configuration and could affect network validation and captive portal detection. Leave it in place, and manage captive portal behaviour through EMM application policy instead.","safe_to_disable":"caution","sources":[{"title":"NetworkStack module - Android Open Source Project","url":"https://source.android.com/docs/core/ota/modular-system/networking"},{"title":"Change the value of an app's resources at runtime (RROs) - Android Open Source Project","url":"https://source.android.com/docs/core/runtime/rros"},{"title":"NetworkStack Android.bp, InProcessNetworkStack (android15-release) - Android source","url":"https://android.googlesource.com/platform/packages/modules/NetworkStack/+/refs/heads/android15-release/Android.bp"},{"title":"NetworkStack AndroidManifest_InProcess.xml (android15-release) - Android source","url":"https://android.googlesource.com/platform/packages/modules/NetworkStack/+/refs/heads/android15-release/AndroidManifest_InProcess.xml"},{"title":"NetworkStack Android.bp (android16-release) - Android source","url":"https://android.googlesource.com/platform/packages/modules/NetworkStack/+/refs/heads/android16-release/Android.bp"},{"title":"Have InProcessNetworkStack override NetworkStack (frameworks/base commit) - Android source","url":"https://android.googlesource.com/platform/frameworks/base/+/3cc6d236c38ce43ac4b884bf5e16a9f18c278810"},{"title":"NetworkStack overlayable.xml (packages/modules/NetworkStack) - Android source","url":"https://android.googlesource.com/platform/packages/modules/NetworkStack/+/refs/heads/main/res/values/overlayable.xml"},{"title":"Package provenance for com.android.networkstack.inprocess.overlay - Android System App Database","url":"https://sysapps.bayton.org/api/packages/com.android.networkstack.inprocess.overlay"}],"last_verified":"2026-10-10T00:00:00Z"},"labels":[{"label":"NetworkStackInProcessResOverlay","locale":"en-us","count":7},{"label":"NetworkStackInProcessResOverlay","locale":"en-gb","count":6},{"label":"NetworkStackInProcessResOverlay","locale":"es-es","count":4},{"label":"NetworkStackInProcessResOverlay","locale":"","count":2},{"label":"NetworkStackInProcessResOverlay","locale":"en","count":2},{"label":"NetworkStackInProcessResOverlay","locale":"en-US","count":2},{"label":"NetworkStackInProcessResOverlay","locale":"en-GB","count":1},{"label":"NetworkStackInProcessResOverlay","locale":"en-in","count":1},{"label":"NetworkStackInProcessResOverlay","locale":"en-za-u-fw-mon-mu-celsius","count":1},{"label":"NetworkStackInProcessResOverlay","locale":"es-MX","count":1},{"label":"NetworkStackInProcessResOverlay","locale":"es-US","count":1},{"label":"NetworkStackInProcessResOverlay","locale":"es-mx","count":1},{"label":"NetworkStackInProcessResOverlay","locale":"es-us","count":1},{"label":"NetworkStackInProcessResOverlay","locale":"ru-ru","count":1},{"label":"NetworkStackInProcessResOverlay","locale":"vi-VN","count":1},{"label":"NetworkStackInProcessResOverlay","locale":"vi-vn","count":1},{"label":"NetworkStackOverlayGo","locale":"ru-ru","count":1},{"label":"NetworkStackOverlayGo","locale":"th-th","count":1}],"seen_on_pagination":{"paging_mode":"complete","limit":25,"offset":0,"has_more":false,"next_offset":null,"after":null,"next_after":null,"total":25},"seen_on":[{"device_id":4840,"make":"ANT DAO TECHNOLOGY LIMITED","model":"B3","os_api":"34","observation_count":1,"user_facing_count":0,"last_seen":"2026-08-18T17:19:16Z","provenance":{"classification":"oem","vendor":"ANT DAO TECHNOLOGY LIMITED","sha256":"307ec68c7593e2a4279368a67c009673cd4466c48032dfb246bdadcc4e795d4d"}},{"device_id":163,"make":"Blackview","model":"VARG","os_api":"30","observation_count":1,"user_facing_count":0,"last_seen":"2025-09-01T13:45:53Z"},{"device_id":169,"make":"CUBOT","model":"P80","os_api":"33","observation_count":2,"user_facing_count":0,"last_seen":"2025-09-20T16:44:03Z"},{"device_id":31,"make":"INFINIX","model":"Infinix X6871","os_api":"34","observation_count":1,"user_facing_count":0,"last_seen":"2025-05-21T20:01:57Z"},{"device_id":106,"make":"LENOVO","model":"Lenovo TB-7306F","os_api":"30","observation_count":1,"user_facing_count":0,"last_seen":"2025-07-19T15:27:54Z"},{"device_id":28,"make":"LENOVO","model":"Lenovo TB-X6C6NBF","os_api":"31","observation_count":1,"user_facing_count":0,"last_seen":"2025-05-15T11:09:01Z"},{"device_id":49,"make":"LENOVO","model":"TB132FU","os_api":"34","observation_count":1,"user_facing_count":0,"last_seen":"2025-06-16T12:51:33Z"},{"device_id":50,"make":"LENOVO","model":"TB570FU","os_api":"35","observation_count":1,"user_facing_count":0,"last_seen":"2025-06-17T00:02:58Z"},{"device_id":270,"make":"motorola","model":"moto g - 2025","os_api":"36","observation_count":2,"user_facing_count":0,"last_seen":"2026-10-25T04:45:21Z","provenance":{"classification":"oem","vendor":"Motorola","sha256":"0dc1f3c5914ffa0e8493d35f1a20b15f4c93b91faac9e36027cd9de6fd58f2c4"}},{"device_id":272,"make":"motorola","model":"moto g24","os_api":"34","observation_count":1,"user_facing_count":0,"last_seen":"2025-12-19T11:40:53Z","provenance":{"classification":"oem","vendor":"Motorola","sha256":"f9896a63b98ee6af5b898e039f7d21e8b54aa509ab449691885c67a1647b9aa1"}},{"device_id":290,"make":"NUU","model":"S6707X","os_api":"34","observation_count":1,"user_facing_count":0,"last_seen":"2026-01-12T16:57:57Z","provenance":{"classification":"oem","vendor":"NUU","sha256":"ded15354cfd925782909e01fef43601a77e392d5902f53e75c313d5ec5567219"}},{"device_id":301,"make":"OPPO","model":"CPH2637","os_api":"35","observation_count":1,"user_facing_count":0,"last_seen":"2026-02-02T19:10:20Z","provenance":{"classification":"oem","vendor":"OPPO","sha256":"fc98dae63ad39626c8c67fbe83f2f06f74932a9cd146b92cecfc6a047a904386"}},{"device_id":148,"make":"realme","model":"RMX2001","os_api":"30","observation_count":1,"user_facing_count":0,"last_seen":"2025-08-21T05:31:41Z"},{"device_id":244,"make":"realme","model":"RMX3690","os_api":"31","observation_count":1,"user_facing_count":0,"last_seen":"2025-11-25T05:28:07Z"},{"device_id":330,"make":"revoview","model":"S6518","os_api":"30","observation_count":1,"user_facing_count":0,"last_seen":"2026-03-30T15:33:07Z"},{"device_id":30,"make":"RHINO","model":"T8","os_api":"34","observation_count":1,"user_facing_count":0,"last_seen":"2025-05-17T15:41:11Z"},{"device_id":105,"make":"SMT_HK","model":"Helium Pro","os_api":"31","observation_count":1,"user_facing_count":0,"last_seen":"2025-07-19T02:48:07Z"},{"device_id":182,"make":"TCL","model":"6025D_EEA","os_api":"30","observation_count":1,"user_facing_count":0,"last_seen":"2025-09-17T05:43:21Z"},{"device_id":181,"make":"TCL","model":"6165H","os_api":"33","observation_count":1,"user_facing_count":0,"last_seen":"2025-09-16T17:04:55Z"},{"device_id":291,"make":"TCL","model":"9466X","os_api":"33","observation_count":1,"user_facing_count":0,"last_seen":"2026-01-13T19:41:17Z"},{"device_id":156,"make":"TCL","model":"9491G","os_api":"34","observation_count":1,"user_facing_count":0,"last_seen":"2025-08-26T09:08:36Z"},{"device_id":178,"make":"Ulefone","model":"Power Armor X11 Pro","os_api":"31","observation_count":1,"user_facing_count":0,"last_seen":"2025-09-15T05:09:46Z"},{"device_id":3853,"make":"vivo","model":"V2550","os_api":"36","observation_count":1,"user_facing_count":0,"last_seen":"2026-07-21T15:30:55Z","provenance":{"classification":"oem","vendor":"vivo","sha256":"bcc35d4d3606f154f0402ab7634e8490c0b244c2675c3c6238986987024f0c02"}},{"device_id":171,"make":"Xiaomi","model":"21091116UI","os_api":"33","observation_count":1,"user_facing_count":0,"last_seen":"2025-09-08T16:34:28Z"},{"device_id":279,"make":"Xiaomi","model":"24117RN76O","os_api":"35","observation_count":1,"user_facing_count":0,"last_seen":"2025-12-28T15:32:14Z","provenance":{"classification":"oem","vendor":"Xiaomi","sha256":"c9009d01ebf9f5d0302bc71b2fe9aa9a47a432bba17308a3111b75d7b2149025"}}],"intelligence":{"insights":["Re-signed by each device maker with its own platform key - 7 different certificates appear across 6 device makers in our sample. That is the signature of a stock AOSP/system package every OEM builds and signs itself, not a single maker's or a third party's preinstall. These are platform-level keys: they also sign the Android framework itself.","Its largest observed manifest declares 1 permissions: 1 runtime (user-granted).","Never reported as user-facing, so it runs as a background or system component rather than an app the user opens."],"device_profiles":7,"signer_count":7,"signer_consistent":false,"max_permission_count":1,"min_size_bytes":8542,"max_size_bytes":16734,"min_target_sdk":31,"max_target_sdk":34,"oldest_version":"12","newest_version":"14","has_third_party_preinstall":false,"genuine_third_party":false,"play_eligible_count":0,"signers":[{"sha256":"0dc1f3c5914ffa0e8493d35f1a20b15f4c93b91faac9e36027cd9de6fd58f2c4","classification":"oem","vendor":"Motorola","observation_count":2,"makes":["motorola"],"signs_framework":true,"global_make_count":1,"global_package_count":149,"global_observation_count":294},{"sha256":"307ec68c7593e2a4279368a67c009673cd4466c48032dfb246bdadcc4e795d4d","classification":"oem","vendor":"ANT DAO TECHNOLOGY LIMITED","observation_count":1,"makes":["ANT DAO TECHNOLOGY LIMITED"],"signs_framework":true,"global_make_count":1,"global_package_count":98,"global_observation_count":98},{"sha256":"bcc35d4d3606f154f0402ab7634e8490c0b244c2675c3c6238986987024f0c02","classification":"oem","vendor":"vivo","observation_count":1,"makes":["vivo"],"signs_framework":true,"global_make_count":1,"global_package_count":222,"global_observation_count":222},{"sha256":"c9009d01ebf9f5d0302bc71b2fe9aa9a47a432bba17308a3111b75d7b2149025","classification":"oem","vendor":"Xiaomi","observation_count":1,"makes":["Xiaomi"],"signs_framework":true,"global_make_count":1,"global_package_count":322,"global_observation_count":860},{"sha256":"ded15354cfd925782909e01fef43601a77e392d5902f53e75c313d5ec5567219","classification":"oem","vendor":"NUU","observation_count":1,"makes":["NUU"],"signs_framework":true,"global_make_count":1,"global_package_count":118,"global_observation_count":118},{"sha256":"f9896a63b98ee6af5b898e039f7d21e8b54aa509ab449691885c67a1647b9aa1","classification":"oem","vendor":"Motorola","observation_count":1,"makes":["motorola"],"signs_framework":true,"global_make_count":1,"global_package_count":95,"global_observation_count":95},{"sha256":"fc98dae63ad39626c8c67fbe83f2f06f74932a9cd146b92cecfc6a047a904386","classification":"oem","vendor":"OPPO","observation_count":1,"makes":["OPPO"],"signs_framework":true,"global_make_count":1,"global_package_count":181,"global_observation_count":181}],"permissions":[{"permission":"android.permission.POST_NOTIFICATIONS","description":"Allows the app to show notifications","official":true}]},"previews":{"labels":{"kind":"preview","limit":60,"total":18,"truncated":false,"collection_url":"/api/packages/com.android.networkstack.inprocess.overlay/labels"}},"collections":{"labels":"/api/packages/com.android.networkstack.inprocess.overlay/labels","seen_on":"/api/packages/com.android.networkstack.inprocess.overlay/seen_on"}}
