How To Install Any App As A System App On Android [Guide]
While installing an app on your Android device is as simple as searching for it in the Google Play Store and hitting install, or sideloading its APK on your phone, that always installs them as user apps (also referred to as data apps). At times certain apps need to be installed as system apps rather than user apps in order to utilize their full potential, and that’s where things get a little complicated. In this guide, we will show you how you can install any Android app as a system app on your Android device.
The apps installed on your Android devices can be broadly categorized as system apps or user apps, based on their installation location. The user apps are just all your normal app installations through the Google Play Store, Amazon Appstore or sideloading. These go into the /data partition of your Android phone, which is the part of the internal memory made available for user data and apps.
System apps are basically the apps that come pre-installed with your ROM. In a standard Android user environment, the user doesn’t have write access to the /system partition and thus, installing or uninstalling system apps directly isn’t possible. The process isn’t as hard as it may sound. However, there is a catch.
In order to install an app as a system app on your Android device, your device must either be rooted, or have a custom recovery installed (or both). Usually pretty much everyone who has a custom recovery installed uses a rooted ROM, so we’ll just be using the method for rooted phones.
Root Access File Manager Method
Requirements
- Your Android device must be rooted. If it isn’t already, check out our guide on rooting Android.
- A root access file manager of your choice. We will be using ES File Explorer for the purpose.
- The APK file for the app you want to install as system app. If you have the app installed as a normal user app, don’t worry; we’ll show you how to grab its APK.
Procedure
- Configuring ES File Explorer for root read/write access (required only once):
- Launch ES File Explorer, press Menu and tap ‘Settings’.
- In the settings, enable the ‘Up to root’ check box.
- Further down in the settings, enable ‘Root Explorer’ check box. You will get a warning that you should confirm.
- You will then get the Superuser permissions request that you must allow.
- Finally, enable the ‘Mount File System’ check box, and press the back key to get back to the explorer interface. ES File Explorer is now configured to work as a root explorer. You do not need to do this again on the same device now, unless you uninstall ES File Explorer, perform a factory reset or install another ROM.
- Finding the APK of an already-installed normal app (skip to step 3 if you already have the APK):
- First of all, install the app from Play Store, if you haven’t already done that.
- Launch ES File Explorer and go to /data/app. (You may have to press the back button to get to / first).
- If you know the icon of the app, you can easily find it here. If you are having trouble finding the app here due to the confusing names or because of having a lot of apps installed, just search for the app in Google Play Store in a web browser and look at its Play Store link for the name. The file name will basically be the part after ?id= in its market link (and before any other question mark that may or may not appear in the link). For example, the market link for ES File Explorer is https://play.google.com/store/apps/details?id=com.estrongs.android.pop and its APK file in /data/app is com.estrongs.android.pop-1.apk.
- If you already have the APK of the file that you want to install as a system app, make sure you have transferred it to your device’s SD card if you haven’t done that already. Also make sure you know the path where you have copied it on the SD card.
- Once you have located the required APK on the SD card from ES File Explorer, tap-and-hold on its icon till you get a menu, and tap ‘Cut’. You should see a little blue arrow on the bottom of the screen now. (You may select ‘Copy’ instead of ‘Cut’ if you are copying a file over from the SD card and want to keep a copy there. In case of copying an APK from /data/app, always use ‘Cut’.)
- Now press the back button till you reach / and then browse to /system/app/
- Tap the little arrow that you see on the bottom of the screen. It will bring up a pane with the icon of the copied file.
- Tap on the file’s icon, and it will be transferred to /system/app/.
- Now find the app’s icon in the list of files there and tap-and-hold on it till you get the menu.
- Scroll down in the menu till you see ‘Properties’ and tap on it. You will now see the properties dialog.
- Tap the ‘Change’ button in front of the Permissions to bring up the permissions dialog.
- Make sure everything under ‘Read’ is checked, only ‘User’ is checked under ‘Write’ and nothing is checked under ‘Execute’ Your screen should look like the following:
- Tap OK on this screen and then on the Properties screen. Your app’s permissions are now set correctly.
- Reboot your device. Your app is now ready to be used as a system app.
Terminal Emulator Method
If you don’t want to configure and use a file browser for the purpose and would rather just quickly issue a few commands to do the job, we’ve got you covered.
Requirements
- Your Android device must be rooted. If it isn’t already, check out our guide on rooting Android.
- Android Terminal Emulator
- Mount /system (rw / ro)
- The APK file for the app you want to install as system app. If you have the app installed as a normal user app, don’t worry; we’ll show you how to grab its APK.
Important: Make sure to allow any SuperUser permission requests that you may get during these steps..
If you have the app installed on your phone as a normal user app:
- Launch the ‘mount /system (rw / ro)’ app on your phone.
- Tap ‘Mount r/w’ to mount your /system partition as writable.
- Search for the app in Google Play Store in a web browser (on any device), and open its Play Store web page.
- Look at the Play Store link of the app for a string that starts with ?id= and ends before any further question mark in the link. That will be part of the APK’s name on your phone. For example, the market link for ES File Explorer is https://play.google.com/store/apps/details?id=com.estrongs.android.pop and its APK file in /data/app is com.estrongs.android.pop-1.apk. If you see another question mark after such a name in the link, ignore everything after that.
- Launch Android Terminal Emulator and enter the following commands one by one:
su cd /data/app/
- Now enter this command, making sure you replace ‘file_name_part_comes_here’ with the partial file name for your app that you found out from the link in step B. Don’t forget the asterisk ( * ) in the end.
ls file_name_part_comes_here*
In case of our example from step B, the command would be
ls com.estrongs.android.pop*
- As a result of the command in step D, you will see the complete file name of the app. In case of our example, the result would be com.estrongs.android.pop-1.apk. It is usually the same partial app name that we got from the link in step B, followed by a hyphen ( – ), a number (usually but not always 1), and the .apk extension. Viola, we have located the file name of the required APK.
- Now enter this command, replacing full_file_name_comes_here with the full file name including the extension:
mv full_file_name_comes_here.apk /system/app/full_file_name_comes_here.apk
In case of our example, the command would be
mv com.estrongs.android.pop-1.apk /system/app/com.estrongs.android.pop-1.apk
- Your app has been moved to the system partition, making it a system app from a user app. You may now close the Terminal Emulator window and reboot your device for the changes to take effect.
If you have the APK of the file available on your computer:
- Copy the APK to your phone’s sd card from your computer.
- Launch Android Terminal Emulator on your phone.
- Enter these commands, replacing file_name_comes_here with the full name of the APK file including the extension:
cp /sdcard/file_name_comes_here /system/app/file_name_comes_here.apk chmod 644 /system/app/file_name_comes_here.apk
For example if the file name is FileManager.apk, the commands would be like:
cp /sdcard/FileManager.apk /system/app/FileManager.apk chmod 644 /system/app/FileManager.apk
And you’re done! Just reboot the phone now for the changes to take effect.
ADB Method
Requirements
- Your Android device must be rooted. If it isn’t already, check out our guide on rooting Android.
- ADB installed and configured on your computer. See our guide for the complete method.
- The APK file for the app you want to install as system app. If you have the app installed as a normal user app, don’t worry; we’ll show you how to grab its APK.
Procedure
If you have the app installed on your phone as a normal user app:
- Search for the app in Google Play Store on your computer in a web browser, and open its Play Store page.
- Look at the Play Store link of the app for a string that starts with ?id= and ends before any further question mark in the link. That will be part of the APK’s name on your phone. For example, the market link for ES File Explorer is https://play.google.com/store/apps/details?id=com.estrongs.android.pop and its APK file in /data/app is com.estrongs.android.pop-1.apk. If you see another question mark after such a name in the link, ignore everything after that.
- Launch a command prompt window and enter the following commands one by one:
adb remount adb shell su cd /data/app/
- Now enter this command, making sure you replace ‘file_name_part_comes_here’ with the partial file name for your app that you found out from the link in step B. Don’t forget the asterisk ( * ) in the end.
ls file_name_part_comes_here*
In case of our example from step B, the command would be
ls com.estrongs.android.pop*
- As a result of the command in step D, you will see the complete file name of the app. In case of our example, the result would be com.estrongs.android.pop-1.apk. It is usually the same partial app name that we got from the link in step B, followed by a hyphen ( – ), a number (usually but not always 1), and the .apk extension. Viola, we have located the file name of the required APK.
- Now enter this command, replacing full_file_name_comes_here with the full file name including the extension:
mv full_file_name_comes_here.apk /system/app/full_file_name_comes_here.apk exit exit adb reboot
In case of our example, the command would be
mv com.estrongs.android.pop-1.apk /system/app/com.estrongs.android.pop-1.apk
And you’re done.
- Your app has been moved to the system partition, making it a system app from a user app. You may now close the command prompt window. The phone will now reboot for the changes to take effect.
If you have the APK of the file available on your computer:
- Open a command prompt window and navigate to the location of the APK file on your computer.
- Enter these commands, replacing file_name_comes_here with the full name of the APK file including the extension:
adb remount adb push file_name_comes.apk_here /system/app/ adb shell chmod 644 /system/app/file_name_comes_here.apk adb reboot
For example if the file name is FileManager.apk, the commands would be like:
adb push FileManager.apk /system/app/ adb shell chmod 644 /system/app/FileManager.apk
And you’re done!
Your phone will reboot and your app will be ready to be used as a system app.
Method for unrooted devices with custom recovery installed
If you have a custom recovery and haven’t rooted your phone, you already know what you’re doing, and know that you just have to flash the zip file of the apps you need to install as system apps.
Hi!
I have Pixel Launcher installed as system app (so I can use the google now feature)
But every time I update CM 14.1 it will unsinstall Pixel Launcher and I have to re-install it again…How can I stop this from happening ?
Thanks 4 your help
The installation worked, but when i open the apps i get the warning “Unfortunatelly ‘app’ has stopped”
Hello Sir, I am using Karbonn A15 android version 4.0.4 ICS with system rom 255 mb. I tried to Move “google Play Services” to system app directory using “Apps2rom” app but it gives message for low memory space in system app directory. What shall i do to install “google Play Services” as system app?
It’s easier to just use the /system/app mover app on Google Play it virtually does everything for you and it’s free but you need root
my phones android system got deleted…went to hard brake ….what to do?
THNX A LOT GUYS! this trick worked for me! =D so lucky my i dont need a factory reset!!! thnx a lot guys!! =)
If i do this steeps, and i recovery my phone from wipe/delete all data, then when phone star up will autoinstall this app? its like a bloatware?
Not sure if Android has closed this door ? I’ve put my APK in system/app, but it seems still not allowed to sendBroadcast with android.intent.action.AIRPLANE_MODE.
Permission denial: writing to secure settings requires android.permission.WRITE_SECURE_SETTINGS
Thanks a lot for this tutorial! It saved tons of my time 🙂
Hello all!
My phone, Huawei C8815, has been rooted and has Super User icon on home screen.
When I enter the command “adb remount”, it reply “remount failed: Operation not permitted.”
I checked unknown source from security setting and usb debugging from developer option.
What’s wrong on my device?
Help me please.
Thanks.
Hey hi!
If the app is a clock app, does the permission modification affect this in someway?
Can somebody update the article?
ES File Explorer is Chinese spyware.
No it’s not.
It is.
No it’s not.
It is.
Can you please tell me how to remove pri-installed app. I like that article and it’s works for me…
Micromax Canvas Fun A63.
guys, i want to install Samsung music player (system app) in my sony mobile (rooted), plz help
Bricked my whole device with this.. Thanks alot!!
In the past i used titanium backup for this on my xperia mini with cyanogen 9.1.
The problem was that the app’s cache that i moved, occupies a lot of memory in the system memory, and i cannot pass more apps…
Is possibile to move the apps in the system memory but mantain the cache in the user memory?
Say,the app is stored in system/app by the above procedure.Then for subsequent installs of the app(either from playstore/sideloading),will the app be still located in system/app or will the new ones goto data/app?
Hello, I have a problem on my phone and the only solution from above is the last one ”ADB method”, so I did all steps but when I entrer ‘adb remount’ on command prompt it gives me ‘error: more than one device connected’, what should I do? I only have my Xperia Z1 connected to pc, and not any other device.. PLEASE HELP!
Hi, with this metod i can change my contact store app? When i install a new contact app and i disabled the old contact app, i want to add a new contact, but i can’t
thanks a ton.. it was helpful
wow.. the above tutorial very2 hard.. its dificult to try..
hi everybody
what does exactly do the checking the permission boxes in es explorer process?
what if i forget doing that?
i remember the last time that i moved some pretty useful apps to system>apps without checking those boxes and it was successful
but because of an update plan for an app i decided to do it reverse to release some space (move to data>apps then uninstall) and unfortunatly no spaces were released for new version !!
even i did removed whole apps and nothing good yet, finally did factory reset .
any idea?
another question plz:
how about moving the apk file directly to system>apps directory without having to installing it and doing whole these process?
bcoz i did! was i wrong?
excuse my bad english
xperia mini
rooted
4.0.a.2.377
android 2.3.3
Be aware for one important pitfall :
Any application depending on libraries inide it’s APK file will most likely not function simply being moved to /system/app!!
Remedy is to manually copy the required libs from /data/data//lib to /system/lib aswell.
Do this immediately after moving the apk itself. Anyway before system reboot, because after that the data/data//lib will disappear due to moving the main apk to system!
If ever the application is uninstalled or moved back to /data/app/, the system/lib/ risks becoming ‘bloated’ with libs no longer necesary. So in such case don’t forget to manually remove these libs!
cool..this tutorial very clear for newbie like me..
the installation failed.. why is this?? 🙁
thanx …. it really helps.
i did the steps with the ES File Explorer but when i tried to paste the app in the system/app file it said app cannot be moved!!
please help im trying to install FM_Radio.apk in my htc one x since it didnt come with the phone although it was supposed to
you must do root access or else it won’t work
I must say a big “THANK YOU” to you sir! i live in Nigeria and the economic condition here is really harsh. I was using an HTC Incredible S but it fell and the screen got broken and i couldnt find someone to fix it. So i bought an LG P930 and after less than a month I accidentally removed lgphone.apk instead of the intended lgphone.odex. I couldnt imagine myself coughing up more than a months pay to buy another good device. A google search led me here and I was able to solve the problem. Thanks a million. Thanks again, you really saved my arse!!!!!
Thank you so much! Great Job!
wouldnt it be easier to use rom toolbox and whatever app wanna move to system partition just press and hold app and select make system app? i have over 400mb system partition space and wanna move all the small apps to it like grooveip,textnow,fpse,snesoid, launchers and such…i like this guide tho will try it out 🙂
Thanks very useful 🙂
Thank you so much! So through!
Brilliant instructions! I had an older version of QuickPic installed as a system app and wanted to integrate a newer version into the ROM. I had a different file manager installed on my phone but was still able to successfully install the latest QuickPic app as a system app. Thank you! 😀
I follow your steps but cannot move the apps from data to system. The esexplorer said this apps cannot move. Please advise what step I do it wrong.
Thanks
When I google something about android, your page is the first result, I find exactly what I want here 🙂
Thank you.
Can you use this same method in reverse to remove bloatware?
Yes, you certainly can! =)
Haha, thanks! I went ahead and tried it just after posting the question and it worked flawlessly. I know who’ll be cleaning off his Galaxy S III next week when it arrives. THIS GUY.
Uh, just imagine me pointing at my chest with both thumbs.
None other than our friend ‘Joe the Wizard’!
now the es file explorer is updated i cant find all configurations
Believe me, I tried the first method by changing the permissions. But I wasn’t rebooting the device… Thanks a lot!… 🙂
I tried using the above steps (copying the .apk in system’s app partition) for one of the app named File explorer. After reboot, couldn’t see the app in the list of apps. Any suggestions?
do u find why is that happend?
Apps2ROM works great exactly for this. It manages duplicates as well.https://play.google.com/store/apps/details?id=com.lrenault.tools.apps2rom
Great find! =)
Is there any benefit of making an app a system app?
In certain (rare) scenarios, an app might require to be installed as a system app in order to perform certain functions not available to user apps. For instance, to be able to directly add widgets from the app drawer of any ICS-based launcher, it must be installed as a system app, since launchers installed as user apps don’t have that permission.
Apart from that, one might also want certain apps to be installed into the system partition so that they remain there even after performing a factory reset. Once installed in the system partition, the app essentially becomes a part of your current ROM itself.
Hi,
After following the ES File explorer method to copy the apk to system and rebooting, it always gives error “Unfortunately, Handcent SMS has stopped.”
i did that twice same thing happend u need to delete the file from the system/ app and then reboot it will become alright and then install it again
Haroon, why do we need to follow this long procedure when it can be done easily using Titanium Backup?
The Titanium backup method requires the donate version and isn’t available in the free one. This method will work universally.
I use Titanium Backup to convert any app to a system app. It’s a one click deal.
The Titanium Backup method is definitely better if you have the paid version. For those who don’t want to pay for it, these methods should do just fine.
Can you please tell me how to remove pri-installed app.
Micromax Canvas Fun A63.
System app uninstaller is on google play
Needs root
Nothing if system restricted
yes your right but my Titanium Backup is free version only 🙁