O que exatamente é framework-res.apk

9

Pelo que entendi, é um grande arquivo de sistema que aparentemente controla grande parte do telefone. Estou interessado porque queria fazer alguns temas e até agora havia editado o SystemUI.apk, mas se alguma vez tivesse algum problema (e sendo um iniciante que estava prestes a acontecer) nada parecia acontecer além do fato de ter perdido minha barra de notificação.

O problema é que ouvi falar de algumas pessoas que tocaram no framework-res.apk e acabaram não sendo capazes de inicializar o telefone. Decidi, antes de descuidadamente mexer com algo que poderia potencialmente suavizar meu telefone, gostaria de aprender um pouco mais sobre isso.

Então, o que exatamente é framework-res.apk? Para que isso é usado? O que ele controla? Onde visualmente vemos seu uso? O que poderia potencialmente acontecer ao meu telefone se algo desse errado com o framework-res? Mais alguma coisa que eu deveria saber antes de cutucar meu nariz onde não deveria estar?

Sean
fonte

Respostas:

8

Framework-res.apkbasicamente contém os elementos da interface gráfica do usuário do telefone. Este arquivo está disponível em /system/framework/framework-res.apk.

Colocar esse arquivo significaria alterar a aparência e o aspecto completos do seu dispositivo. Como é o elemento principal da tela, substituí-lo diretamente pressionando-o pelo ADB levaria a tijolos macios. Portanto, este apk deve ser modificado e substituído com cuidado usando o módulo de recuperação do telefone.

Verifique este link para obter detalhes sobre o mesmo: Modificando o framework-res.apk (Temando a interface do usuário)

SamSPICA
fonte
3

Da minha experiência em codificação, posso dizer o seguinte como meu entendimento:

Se você está familiarizado com as terminologias de desenvolvimento de aplicativos, este framework-res.apk é apenas uma biblioteca de recursos. Continuando com essa suposição, outros módulos e bibliotecas dependem desse arquivo para obter imagens, som etc. Por exemplo, o som da animação de inicialização está incorporado nesse arquivo. Geralmente, todo recurso recebe um identificador com os outros módulos carregados e eles assumem ou assumem como certo que esse recurso estará disponível neste arquivo.

Geralmente, haverá um arquivo de manifesto que indexará todos os recursos (imagens, sons etc.) em relação ao seu identificador. Os segmentos de código que mapeiam os recursos contra seu identificador e que buscam o recurso solicitado serão compilados em uma plataforma / versão / biblioteca e, portanto, aprimorando e recompilando se não for feito com cuidado, tornarão o framework-res.apk incompatível com seus módulos de consumo. Dependendo de como as coisas são implementadas, você obteria um erro, mas os desenvolvedores não podem esperar para verificar tudo e precisam tomar certas coisas como garantidas (como a presença de um recurso como eles que o plantaram). Portanto, geralmente o módulo de consumo congela e, portanto, todo o telefone parece estar congelado, pois os módulos do sistema também dependem desse apk.

Narayanan
fonte
0

Se você quiser alterar o arquivo AndroidManifest.xml de framework-res.apk, acho que você deve assinar todos os aplicativos do sistema com sua própria chave para evitar o bootloop. Se você quiser alterar outras coisas no framework-res.apk: "do que arraste a pasta meta-inf e androidmanifest.xml do apk original para apk modded usando 7zip ou winrar"

No framework-res.apk, você pode mudar alguns pensamentos como nível de proteção, etc. é interessante: https://www.reddit.com/r/LineageOS/comments/9z728h/how_to_change_frameworkresapk_without_bootloop/

Meus erros ao assinar todos os aplicativos do sistema com minha chave: Não é possível assinar novamente o aplicativo do sistema Android sem travar o aplicativo (usando o LineageOS)

Não é possível assinar novamente o aplicativo do sistema Android sem travar o aplicativo (usando o LineageOS)

Ele tem problemas semelhantes e criou um update.zip: /programming/9475576/resigning-system-img-on-a-device

andromade7
fonte