I recently started learning android ROMs. I have heard system apps with some special (not root) permissions.

Is there a difference between system apps and pre-installed app when we build a ROM? I those two concepts?

2 Answers 2


I think I might have been found the difference. According to this link :

If an app is signed with System Signature, then its not allowed to Disable that app.Also , not all preloaded apps have system signature.

So among the apps within /system/app directory, we have two types of pre-installed apps. System signed with more privileges and normal apps.

  • +1 and deleted my answer as yours has a source. Mine is more of an elaborate comment
    – beeshyams
    Jun 18, 2018 at 14:32

Yes and no.

Just Preinstalled apps There are some apps your manufacturer might ship that are installed by default on your phone but can be uninstalled just like regular apps. They work technically just like any app you would install usually. All other system apps are obviously also pre-installed, but treated differently:

System apps A couple of the apps shipped with the device may be installed as system apps. That can only be done by the manufacturer (on non-rooted phones) because they need to be signed from them, and the apps can not be uninstalled, just disabled. Otherwise, they behave the same as other apps.

System apps with elevated privileges Can also just be installed by the manufacturer, and only disabled. But these apps have the internal detail of having advanced "system" privileges, which makes them much more powerful. These should usually just be critical system components that need this much access, but some manufacturers still use it for their own apps.

  • Thank you. Could you provide me an article about 'how' to put an APK in one of those classes when building ROM? So far, I just know I should put all of them in /system/app (and possibly sign some of them?) Thanks a lot
    – Saleh
    Jun 17, 2018 at 19:01
  • @Saleh I unfortunaley don't know about any articles that cover this well off the bat :/ The stuff in /system/app/ is "just" a system app. For elevated privileges, the app needs to be put in /system/priv-app/ and, starting from Oreo, also be put on a whitelist before building the ROM. AFAIK, every app you build together with the ROM is signed during the process.
    – Namnodorel
    Jun 17, 2018 at 19:22

You must log in to answer this question.

Not the answer you're looking for? Browse other questions tagged .