As far as I understand it, it is a big system file that apparently controls a big part of the phone. I am interested because I wanted to do some themeing and so far I had edited SystemUI.apk, but if I ever ran into any problems (and being a beginner that was bound to happen) nothing seemed to happen other than the fact that I lost my notification bar.

Problem is, I have heard of some people who touched framework-res.apk and they wound up not being able to even boot their phone. I decided before carelessly poking around with something that could potentially soft brick my phone, I would like to learn a bit more about it.

So what exactly is framework-res.apk? What is it used for? What does it control? Where do we visually see its use? What could potentially happen to my phone should something go amiss with framework-res? Anything else I should know before poking my nose where it shouldn't be?

3 Answers 3


Framework-res.apk basically contains the elements of the Graphical User Interface for the phone. This file is available at /system/framework/framework-res.apk.

Poking in this file would mean changing the complete look and feel of your device. Since it is the main element of your screen, replacing it directly by pushing it through ADB would lead to soft-brick. Therefore, this apk should carefully be modified and replaced using the recovery module of the phone.

Check this link for details on the same: Modifying the framework-res.apk (Theming the UI)


From my coding experience, I can say the following as my understanding:

If you are familiar with application development terminologies, this framework-res.apk is just a resource library. Continuing with that assumption, other modules, libraries depend on this file to get images, sound etc. For example the boot animation sound is embedded in this file. Every resource will generally be given an identifier through with the other modules load and they will just assume or take it for granted that such resource will be available in this file.

Generally there will be a manifest file which will index all the resources (images, sounds etc) against its identifier. The code segments that maps the resources against its identifier and that fetches the requested resource will be compiled against one platform/version/library and hence tweaking and recompiling if not done carefully will make the framework-res.apk incompatible with its consuming modules. Depending on how things are implemented, you would get away with an error, but developers can't expect to verify everything and they have to take certain things for granted (like presence of a resource as it is they who had planted it). Hence usually the consuming module freezes and hence the whole phone appears to be frozen as system modules as well depends on this apk.


If you want to change the AndroidManifest.xml file of framework-res.apk i think you must sign all system apks with your own key to avoid bootloop. If you want to change other things in framework-res.apk: "than drag meta-inf folder and androidmanifest.xml from original apk to modded apk using 7zip or winrar"

In the framework-res.apk you can change some thinks like protectionlevel etc. its interesting: https://www.reddit.com/r/LineageOS/comments/9z728h/how_to_change_frameworkresapk_without_bootloop/

My errors when i sign all system-apps with my key: Can not re-sign Android system app without app crashing (using LineageOS)

Can not re-sign Android system app without app crashing (using LineageOS)

He has similar problems and he created an update.zip: https://stackoverflow.com/questions/9475576/resigning-system-img-on-a-device

You must log in to answer this question.

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