Quel est exactement framework-res.apk

9

Pour autant que je le comprends, c'est un gros fichier système qui contrôle apparemment une grande partie du téléphone. Je suis intéressé parce que je voulais faire du thème et jusqu'à présent, j'avais édité SystemUI.apk, mais si jamais je rencontrais des problèmes (et étant un débutant qui devait arriver), rien ne semblait se produire à part le fait que j'avais perdu ma barre de notification.

Le problème est que j'ai entendu parler de certaines personnes qui ont touché framework-res.apk et qui se sont retrouvées incapables de démarrer leur téléphone. J'ai décidé avant de fouiller négligemment avec quelque chose qui pourrait potentiellement brique doucement mon téléphone, je voudrais en savoir un peu plus à ce sujet.

Alors, quel est exactement framework-res.apk? A quoi cela sert? Que contrôle-t-il? Où voyons-nous visuellement son utilisation? Que pourrait-il arriver à mon téléphone en cas de problème avec framework-res? Autre chose que je devrais savoir avant de me piquer le nez là où il ne devrait pas être?

Sean
la source

Réponses:

8

Framework-res.apkcontient essentiellement les éléments de l'interface utilisateur graphique du téléphone. Ce fichier est disponible sur /system/framework/framework-res.apk.

Pousser dans ce fichier signifierait changer l'apparence complète de votre appareil. Comme il s'agit de l'élément principal de votre écran, le remplacer directement en le poussant à travers l'ADB conduirait à de la brique molle. Par conséquent, cet apk doit être soigneusement modifié et remplacé à l'aide du module de récupération du téléphone.

Vérifiez ce lien pour plus de détails sur le même: Modification du framework-res.apk (Theming the UI)

SamSPICA
la source
3

D'après mon expérience de codage, je peux dire ce que je comprends:

Si vous connaissez les terminologies de développement d'applications, ce framework-res.apk n'est qu'une bibliothèque de ressources. En continuant avec cette hypothèse, d'autres modules, bibliothèques dépendent de ce fichier pour obtenir des images, du son, etc. Par exemple, le son d'animation de démarrage est incorporé dans ce fichier. Chaque ressource recevra généralement un identifiant avec la charge des autres modules et ils supposeront ou prendront pour acquis que cette ressource sera disponible dans ce fichier.

Généralement, il y aura un fichier manifeste qui indexera toutes les ressources (images, sons, etc.) par rapport à son identifiant. Les segments de code qui mappent les ressources par rapport à son identifiant et qui récupèrent la ressource demandée seront compilés sur une plate-forme / version / bibliothèque et donc peaufiner et recompiler si cela n'est pas fait avec soin rendra le framework-res.apk incompatible avec ses modules consommateurs. Selon la façon dont les choses sont implémentées, vous vous en sortiriez avec une erreur, mais les développeurs ne peuvent pas s'attendre à tout vérifier et ils doivent prendre certaines choses pour acquises (comme la présence d'une ressource car ce sont eux qui l'ont plantée). Par conséquent, généralement, le module consommateur se fige et, par conséquent, le téléphone entier semble être gelé car les modules système dépendent également de cette apk.

Narayanan
la source
0

Si vous souhaitez modifier le fichier AndroidManifest.xml de framework-res.apk, je pense que vous devez signer tous les apks système avec votre propre clé pour éviter le bootloop. Si vous voulez changer d'autres choses dans framework-res.apk: "que faites glisser le dossier meta-inf et androidmanifest.xml de l'apk d'origine vers l'apk modded en utilisant 7zip ou winrar"

Dans le framework-res.apk, vous pouvez changer certaines idées comme niveau de protection, etc. c'est intéressant: https://www.reddit.com/r/LineageOS/comments/9z728h/how_to_change_frameworkresapk_without_bootloop/

Mes erreurs lorsque je signe toutes les applications système avec ma clé: impossible de re-signer l'application système Android sans que l'application se bloque (à l'aide de LineageOS)

Impossible de re-signer l'application système Android sans que l'application se bloque (en utilisant LineageOS)

Il a des problèmes similaires et il a créé un update.zip: /programming/9475576/resigning-system-img-on-a-device

andromade7
la source