Téléchargez le programme pour décompresser le jeu pour Android. Archiveurs zip et rar fonctionnels pour Android. Choisir un bon décompresseur de fichiers. RAR pour Android de RARLAB - un WinRar à part entière pour Android

Vous pouvez télécharger l'archiveur ZIP pour Android dans la boutique en ligne de Google Jouer au magasin. Actuellement archives de fichiers peut être considéré comme l’un des types de données les plus populaires. Il s'agit deÔ Extensions ZIP, RAR, 7Z, TAR et bien d'autres. L'essence de l'utilisation des archives est de placer de nombreux fichiers dans certain endroit, ce qui prend moins d'espace fichier.

Si vous êtes confronté à la nécessité de traiter des données compressées sur un smartphone ou une tablette, vous pouvez utiliser des applications créées spécifiquement pour le système d'exploitation Android.

Il s'agit généralement de programmes hautement spécialisés qui se concentrent uniquement sur la compression et le décompression de fichiers.

La plupart des gestionnaires de fichiers disposent également de fonctionnalités d'archivage intégrées. En installant un tel gestionnaire, l'utilisateur reçoit non seulement un outil de gestion de fichiers, mais également un archiveur pour Android. Si vous êtes intéressé par une application de décompression distincte, vous devez utiliser les programmes suivants.

Programmes populaires

AndroZip est un bon programme outil gratuit, qui crée et décompresse différents types d'archives.

Il prend en charge les formats ZIP, RAR, TAR, GZIP, BZIP2, etc. AndroZip dispose également d'un gestionnaire de fichiers qui vous aide à déplacer certains fichiers entre des dossiers ou à les envoyer vers d'autres appareils. Ce programme simple , qui n'a pas une interface élégante, mais qui fait bien son travail. Lors de la création de fichiers ZIP, des options sont fournies pour le cryptage et la définition de mots de passe sur les archives. AndroZip contient des publicités mais peut être téléchargé gratuitement. Version mobile

Le programme est apparu pour la première fois en 2009. B1 Archiver est l'un des les meilleurs outils créer et déballer différents types archives. Cela fonctionne avec les plus populaires et RAR, mais prend également en charge 37 autres extensions. Le programme est parfait pour les utilisateurs habitués à travailler avec des types d'archives inhabituels ou uniques qui ne sont pas familiers à la plupart des gens ordinaires.

Il offre un support pour plusieurs pages Archives RAR et B1, qui peuvent être utiles dans certaines situations. Ce bonne application Avec interface conviviale. Version payante vous permet d'utiliser certains fonctionnalités supplémentaires et débarrassez-vous de la publicité. Mais même la version gratuite semble décente et convient à la plupart des utilisateurs.

Le logiciel, appelé RAR, appartient à la société RARLAB, qui a développé WinRAR. Il s'agit d'un outil PC bien connu qui a été porté sur la plateforme Android. Il prend en charge de nombreux types de fichiers tels que RAR, ZIP, TAR, 7Z, etc.

Fourni ensemble standard paramètres de cryptage et paramètres de mot de passe. AVEC en utilisant RAR vous pouvez exécuter des tests pour évaluer l'efficacité de l'archivage et récupérer les données endommagées. Mais restaurez fichiers endommagés Ce n’est pas toujours possible. L'application RAR est outil puissant, ce qui convient à la plupart des utilisateurs.

Autres programmes Zip

WinZip, qui peut être considéré comme l'un des archiveurs les plus anciens, est désormais également disponible pour la plateforme Android. L'application a conservé son ancienne interface, qui ne vous plaira peut-être pas utilisateurs modernes. Si apparence Le programme ne vous dérange pas, alors à tous autres égards, il semble être une application digne.

WinZip prend en charge tous les types d'archives courants et populaires. Il possède une fonctionnalité unique qui consiste à prendre en charge Dropbox et Google Drive. Les applications concurrentes n'offrent pas ces fonctionnalités. En fin de compte, les défauts de WinZip se résument à son design démodé. Ce application gratuite ce qui vaut vraiment la peine d'être essayé.

L'outil ZArchiver est entièrement gratuit et provient de Plateforme Android depuis longtemps maintenant. Il offre des commodités interface utilisateur avec des commandes intuitives et prend en charge de nombreux formats d'archives. Fourni diverses options le cryptage, la protection par mot de passe et la possibilité de diviser l'archive en plusieurs parties.

Il n'y a rien de spécial dans l'application, mais cela ne l'empêche pas de bien faire son travail. ZArchiver conviendra à l'utilisateur qui souhaite simplement se connecter pour décompresser ou créer une archive puis se déconnecter. Téléchargez cette application si vous n'avez pas besoin de fonctionnalités supplémentaires.

Garder grand nombre gros fichiers et il est conseillé de les transférer dans des dossiers entiers uniquement lorsqu'il est possible de les combiner et, si possible, de les compresser en taille. Pour cela il y a programmes spéciaux, qui peut même être installé sur appareil mobile. Quel archiveur choisir pour Android et quelles sont les fonctionnalités de chacun ?

Captures d'écran

Description

Cette application est un archiveur qui vous permet de travailler avec n'importe quelle archive de différents formats, dont 7z. La compression 7zip donne généralement des résultats 4 à 25 % supérieurs aux autres. Il existe cependant de nouvelles extensions qui donnent des résultats encore meilleurs, mais la compression des fichiers prend beaucoup plus de temps.

Vous pouvez même télécharger 7Zipper via le Play Market. Après l'installation, vous pouvez télécharger rar ou fichier zip et décompressez-le à l'adresse souhaitée.

Sur l'écran d'accueil ce logiciel toutes les informations sur dossier système (mémoire interne appareils), informations système(tout sur votre téléphone ou tablette), ainsi que le gestionnaire de tâches, les statistiques de la carte mémoire et Explorateur racine. Dernier gestionnaire de fichiers ne peut fonctionner que sur des gadgets jailbreakés.

Mais la caractéristique principale de cet archiveur est son menu, qui peut être ouvert en faisant simplement glisser votre doigt de gauche à droite. Là l'utilisateur trouvera véritable organisateur:

  • l'heure et la météo ;
  • calendrier photo (toutes les photos prises avec l'appareil photo de l'appareil seront triées par dossiers, mois ou dates dans le calendrier) ;
  • éditeur d'images (redimensionnement);
  • bandes dessinées;
  • affichage du texte (ouverture fichier texte sans lecteurs) ;
  • scanner de médias (vous aidera à trouver des médias qui ne sont pas affichés dans la galerie) ;
  • optimiseur de carte mémoire ;
  • vider le cache ;
  • connexion à un PC via réseau local ;
  • peintre;
  • éditeur de texte ;
  • transfert de fichiers (uniquement entre téléphones, fonctionne via Wi-Fi) ;
  • calculatrice;
  • assistant de raccourci ;
  • boussole et bien d'autres fonctionnalités.

Vous n'avez besoin d'aucune connaissance particulière pour savoir comment ouvrir un fichier à l'aide de cette application sur Android. Il vous suffit de savoir exactement dans quel dossier il se trouve. Ensuite, il est soit décompressé, soit simplement travaillé avec les fichiers joints.

Avantages et inconvénients

Il y a ici plusieurs avantages :

  • Vous pouvez télécharger gratuitement l'archiveur 7Zipper pour Android ;
  • toute l'interface est en russe ;
  • le programme permet non seulement d'ouvrir le zip sur Android, mais aussi de compresser plus fortement les fichiers au format 7z ;
  • l'application peut en remplacer plusieurs autres à la fois qui ont des fonctions complètement différentes.

Télécharger

AndroZip

Captures d'écran

WinZip

Captures d'écran

Résultats

Nous avons examiné ici les meilleurs archiveurs pour Android pouvant fonctionner avec divers formats archives et avoir diverses fonctionnalités. Si le propriétaire d'un smartphone ou d'une tablette souhaite un simple archiveur avec la possibilité de ne pas télécharger de fichiers, WinZip lui convient. Conception simple avec accès rapide– dans AndroZip. S’il souhaite regrouper plusieurs programmes en un seul, il aura alors besoin de 7Zipper.

Caractéristiques comparatives des archiveurs (capacités de déballage de fichiers) :

***pour voir l'intégralité du tableau, faites défiler

7ZipperAndroZipWinZip
RAR+
FERMETURE ÉCLAIR+ + +
GOUDRON+ +
GZ+ +
BZ2+
XZ
7z+
B1

RAR pour Android- gratuit programme multifonctionnel archiveur pour compresser et décompresser des fichiers sur téléphones modernes et des comprimés. Créé par la société RARLAB, il intègre toutes les fonctionnalités de l'application WinRAR pour PC. Fonctionne avec tous les formats d'archives, y compris les plus récents Versions RAR, PPMd, ZIPX et BZIP2. Utilisations plein potentiel processeur pour le traitement des données. L'archiveur a pour fonction de déterminer les performances du téléphone.

Captures d'écran RAR →

Vous pouvez télécharger gratuitement RAR pour Android sur cette page. Nous fournissons des originaux versions sécurisées applications du développeur. Installation Archiveur RAR Vous pouvez obtenir de nombreuses fonctionnalités utiles.

Possibilités

  • Rapide et travail de qualité avec des archives des types les plus populaires - RAR et ZIP.
  • Déballage des archives aux formats ARJ, GZ, XZ, 7z, ISO, BZ2 et TAR.
  • Création d'archives multivolumes.
  • Travailler avec des archives continues de différents types.
  • Création des archives cryptées nécessaires.
  • Fonction de détection et de restauration des fichiers endommagés.
  • La possibilité d'ajouter des données de service aux archives, assurant leur récupération en cas de dommages physiques.
  • Vitesse de compression accrue (en utilisant plusieurs cœurs de processeur pour traiter les fichiers à la fois).
  • Installation protection par mot de passe pour les informations de service et la table des matières des archives au format RAR.
  • Équiper les archives de commentaires.

Le programme RAR est un gestionnaire universel pour travailler avec fichiers compressés, vous permettant de créer des archives qui fonctionnent ensuite parfaitement sur votre PC. Il permet de télécharger facilement des livres, de décompresser des jeux, de compresser des photos et des vidéos. Ce super programme pour les téléphones utilisateurs actifs applications mobiles. Vous pouvez télécharger l'archiveur RAR pour Android en utilisant le lien direct ci-dessous.

Les archives pour Android sont nécessaires à beaucoup, pour qui le travail sur un smartphone se poursuit parfois sur le chemin du retour dans le train ou le métro.
De nombreuses personnes sont habituées à utiliser WinRAR et programmes similaires pour regrouper des données dans des archives sur un ordinateur de bureau, avec l'apparence et la rapidité Croissance d'Android Les habitudes du système d'exploitation demeurent, et parfois il est simplement nécessaire d'archiver les données ou de les extraire des archives directement sur le téléphone. C'est pourquoi aujourd'hui nous choisissons meilleur archiveur pour Android.

Liste des candidats :
1.
2.
3.
4.
5.

Nous disposons donc de cinq archiveurs différents pour la salle d'opération. Systèmes Android, faisons connaissance avec chacun d'eux et choisissons le meilleur.

Racine AndroZip Gestionnaire de fichiers

L'un des tout premiers archiveurs apparus sur le système d'exploitation Android, l'application a commencé à se développer rapidement en 2009 et comptait des milliers de fans à cette époque, il n'y avait même pas de concurrents ; Avec AndroZip, vous pouvez facilement copier, déplacer, supprimer, décompresser et archiver des fichiers de n'importe quelle taille. Sur moment actuel AndroZip File Manager compte environ 40 millions d'utilisateurs actifs et ce nombre est en constante augmentation.

Prise en charge des formats :

- Rar (Extrait)


- BZip2 (Extrait)
- 7Z (Extrait)

Captures d'écran :

PowerGrasp


Un archiveur élégant et pratique avec une fonction de gestionnaire de fichiers et la prise en charge des principales extensions d'archivage. Le transfert de données via Bluetooth est pris en charge. Le gestionnaire de fichiers intégré possède toutes les fonctions standard nécessaires, telles que copier, coller, couper, déplacer, etc. La langue russe est prise en charge.

Prise en charge des formats :
- Zip (Archiver\Extraire)
- Rar (Extrait)
- Tar (Archivage\Extraction)
- 7Z (Archiver\Extraire)

Captures d'écran :

ArchiDroïde


Un archiveur simple et en même temps assez fonctionnel pour Android. Une caractéristique positive de cet archiveur est la prise en charge des multi-archives (archives de plusieurs parties dans Format RAR). Vous pouvez également installer ArchiDroid comme archiveur par défaut, accélérant ainsi le processus de décompression des fichiers lors du téléchargement depuis Internet.

Prise en charge des formats :

- Tar (Archivage\Extraction)

- 7Z (Extrait)
- GZip (Extrait)
- BZip2 (Extrait)

Captures d'écran :

Unrar Pro


Un archiveur simple qui ne nécessite pas beaucoup de ressources, mais les fonctionnalités de l'application ne sont pas particulièrement développées par rapport à ses concurrents. Il existe un support pour décompresser les archives avec des mots de passe et le code est optimisé, ce qui donne une augmentation significative des performances par rapport à version standard UnRar.

Prise en charge des formats :
- Zip (prise en charge Archive\Extract\Password)
- Rar (prise en charge de l'extraction et du mot de passe)

Captures d'écran :

ZArchiver


Bien que ZArchiver s'avère le dernier archiveur sur la liste, mais il peut vraiment être considéré comme le meilleur. La riche fonctionnalité de l'application déchire tout simplement les concurrents, la vitesse de travail est parfois tout simplement incroyable, et elle est à son meilleur grâce au travail multithread de l'archiveur. Contrairement à ses concurrents, ZArchiver n'a aucun problème avec les textes cyrilliques, il est bien pensé pour travailler avec plusieurs fichiers simultanément, il possède aperçu rapide propriétés du fichier (type, taille, md5, date de modification... etc.). Avec ZArchiver, vous pouvez visualiser les fichiers dans les archives sans les extraire, ce qui est parfois utile. Fonctionne parfaitement avec les systèmes d'exploitation à partir de la version 1.6.

Prise en charge des formats :
- Zip (prise en charge Archive\Extract\Password)
- 7Z (support Archive\Extrait\Mot de passe)
- BZip2 (Archiver\Extraire)
- GZip (Archiver\Extraire)
- XZ (Archiver\Extraire)
- Tar (Archivage\Extraction)
- Rar (Extrait)
- ISO (Extrait)
-arj (Extrait)
- LZH (Extrait)
-LZMA (Extrait)
- CAB (Extrait)
-Xar (Extraction)
- Deb (Extrait)
- RPM (récupération)
- Tbz (Extrait)
- Tgz (Extrait)
- Apk (Afficher\Ajouter à l'archive\Supprimer de l'archive)

Parfois, certaines applications sur Android ne conviennent pas à l'utilisateur d'une manière ou d'une autre. Un exemple est la publicité intrusive. Et il arrive aussi que le programme soit bon pour tout le monde, mais que la traduction soit tordue, soit complètement absente. Ou, par exemple, le programme est un essai, mais obtenez version complète il n'y a aucune possibilité. Comment changer la donne ?

Introduction

Dans cet article, nous parlerons de comment désassembler un package APK avec une application, nous l'examinerons structure interne, désassemblez et décompilez le bytecode, et essayez également d'apporter plusieurs modifications aux applications qui peuvent nous apporter un avantage ou un autre.

Pour faire tout cela vous-même, il vous faudra au moins connaissances de base Langage Java, dans lequel les applications Android sont écrites, et Langage XML, qui est utilisé partout dans Android - depuis la description de l'application elle-même et ses droits d'accès jusqu'au stockage des chaînes qui seront affichées à l'écran. Vous aurez également besoin de pouvoir utiliser un logiciel de console spécialisé.

Alors, qu’est-ce qu’un package APK dans lequel absolument tous les logiciels Android sont distribués ?

Décompilation d'application

Dans cet article, nous n'avons travaillé qu'avec du code d'application désassemblé, mais si grandes applications en apportant des changements plus sérieux, comprendre le code smali sera beaucoup plus difficile. Heureusement, nous pouvons décompiler le code dex en code Java, qui, bien que non original et non compilé, est beaucoup plus facile à lire et à comprendre la logique de l'application. Pour ce faire, nous aurons besoin de deux outils :

  • dex2jar est un traducteur du bytecode Dalvik en bytecode JVM, sur la base duquel nous pouvons obtenir du code en langage Java ;
  • jd-gui est un décompilateur lui-même qui vous permet d'obtenir du code Java lisible à partir du bytecode JVM. Comme alternative, vous pouvez utiliser Jad (www.varaneckas.com/jad) ; bien qu'il soit assez ancien, il génère dans certains cas plus code lisible, que Jd-gui.

C'est ainsi qu'ils doivent être utilisés. Tout d'abord, nous lançons dex2jar, en spécifiant le chemin d'accès au package apk comme argument :

% dex2jar.sh mail.apk

En conséquence, le package Java mail.jar apparaîtra dans le répertoire courant, qui peut déjà être ouvert dans jd-gui pour afficher le code Java.

Disposition des packages APK et réception de ceux-ci

Sac en plastique Applications Android, en fait, est un fichier ZIP standard, aucun outil spécial n'est requis pour afficher le contenu et l'extraire. Il suffit d'avoir un archiveur - 7zip pour Windows ou une console décompressée sous Linux. Mais c'est à propos de l'emballage. Qu'y a-t-il à l'intérieur ? A l'intérieur nous avons cas général cette structure :

  • META-INF/- contient certificat numérique l'application, l'identification de son créateur et les sommes de contrôle des fichiers du package ;
  • res/ - diverses ressources que l'application utilise dans son travail, telles que des images, une description déclarative de l'interface, ainsi que d'autres données ;
  • AndroidManifest.xml- description de la demande. Cela inclut, par exemple, une liste des autorisations requises, requises Version Android Et autorisation requiseécran;
  • classes.dex- bytecode d'application compilé pour le virtuel Machines Dalvik;
  • ressources.arsc- aussi des ressources, mais d'un autre genre - notamment des chaînes (oui, ce fichier peut être utilisé pour la russification !).

Les fichiers et répertoires répertoriés se trouvent, sinon dans la totalité, du moins peut-être dans la grande majorité des APK. Cependant, il existe quelques autres fichiers/répertoires moins courants qui méritent d'être mentionnés :

  • actifs- analogue des ressources. La principale différence est que pour accéder à une ressource, il faut connaître son identifiant, mais la liste des actifs peut être obtenue dynamiquement à l'aide de la méthode AssetManager.list() dans le code de l'application ;
  • lib- bibliothèques Linux natives écrites en utilisant NDK (Native Development Kit).

Ce répertoire est utilisé par les fabricants de jeux, y plaçant le moteur de jeu écrit en C/C++, ainsi que par les créateurs d'applications performantes (par exemple, Google Chrome). Nous avons compris l'appareil. Mais comment obtenir le fichier package de l’application qui vous intéresse ? Puisqu'il n'est pas possible de récupérer les fichiers APK de l'appareil sans root (ils se trouvent dans le répertoire /data/app) et que le root n'est pas toujours conseillé, il existe au moins trois façons d'obtenir le fichier d'application sur votre ordinateur :

  • Extension du téléchargeur d'APK pour Chrome ;
  • Véritable application APK Leecher ;
  • divers hébergements de fichiers et Varezniks.

Lequel utiliser est une question de goût ; nous préférons utiliser candidatures individuelles, nous décrirons donc l'utilisation de Real APK Leecher, d'autant plus qu'il est écrit en Java et, par conséquent, fonctionnera soit sous Windows, soit sous Nix.

Après avoir démarré le programme, vous devez remplir trois champs : Email, Mot de passe et ID de l'appareil - et sélectionner une langue. Les deux premiers sont l'e-mail et le mot de passe de votre compte Google que vous utilisez sur l'appareil. Le troisième est l'identifiant de l'appareil et peut être obtenu en tapant le code sur le composeur. # #8255## puis trouver la ligne Device ID. Lors du remplissage, il vous suffit de saisir l'ID sans le préfixe Android.

Après avoir rempli et enregistré, le message « Erreur lors de la connexion au serveur » apparaît souvent. Cela n'a rien à voir avec Google Play, alors n'hésitez pas à l'ignorer et à rechercher les forfaits qui vous intéressent.

Afficher et modifier

Disons que vous avez trouvé un package qui vous intéresse, que vous l'avez téléchargé, décompressé... et que lorsque vous avez essayé de visualiser un fichier XML, vous avez été surpris de découvrir que ce fichier n'était pas du texte. Comment le décompiler et comment travailler avec les packages en général ? Est-il vraiment nécessaire d'installer le SDK ? Non, il n’est pas du tout nécessaire d’installer le SDK. En fait, toutes les étapes pour extraire, modifier et empaqueter les packages APK nécessitent les outils suivants :

  • Archiveur ZIP pour le déballage et l'emballage ;
  • petit- assembleur/désassembleur de bytecode machine virtuelle Dalvik (code.google.com/p/smali) ;
  • apte- un outil de packaging des ressources (par défaut, les ressources sont stockées sous forme binaire pour optimiser les performances des applications). Inclus dans Composition androïde SDK, mais peut également être obtenu séparément ;
  • signataire- outil pour signature numérique paquet modifié (bit.ly/Rmrv4M).

Vous pouvez utiliser tous ces outils séparément, mais cela n'est pas pratique, il est donc préférable d'utiliser un logiciel de niveau supérieur construit sur cette base. Si vous travaillez sous Linux ou Mac OS X, il existe un outil appelé apktool. Il vous permet de décompresser les ressources dans aspect original(y compris les fichiers binaires XML et arsc), reconstruisez le package avec les ressources modifiées, mais ne sait pas comment signer les packages, vous devrez donc exécuter l'utilitaire de signature manuellement. Malgré le fait que l'utilitaire soit écrit en Java, son installation est assez non standard. Vous devez d’abord récupérer le fichier jar lui-même :

$ cd /tmp $ wget http://bit.ly/WC3OCz $ tar -xjf apktool1.5.1.tar.bz2

$ wget http://bit.ly/WRjEc7 $ tar -xjf apktool-install-linux-r05-ibot.tar.bz2

$ mv apktool.jar ~/bin $ mv apktool-install-linux-r05-ibot/* ~/bin $ export PATH=~/bin:$PATH

Si vous travaillez sous Windows, il existe un excellent outil appelé Virtuous Ten Studio, qui rassemble également tous ces outils (y compris l'apktool lui-même), mais au lieu d'une interface CLI, il offre à l'utilisateur une interface intuitive. Interface graphique, avec lequel vous pouvez effectuer des opérations de déballage, de démontage et de décompilation en quelques clics. Cet outil est Donation-ware, c'est-à-dire que parfois des fenêtres apparaissent vous demandant d'obtenir une licence, mais en fin de compte, cela peut être toléré. Cela ne sert à rien de le décrire, car vous pouvez comprendre l'interface en quelques minutes. Mais apktool, en raison de sa nature de console, devrait être discuté plus en détail.


Regardons les options d'apktool. Bref, il y en a trois commandes de base: d (décodage), b (build) et if (installer le framework). Si tout est clair avec les deux premières commandes, alors que fait la troisième ? opérateur conditionnel? Il décompresse le cadre d'interface utilisateur spécifié, ce qui est nécessaire dans les cas où vous disséquez un package système.

Considérons le plus options intéressantes première équipe :

  • -s- ne démontez pas les fichiers dex ;
  • -r- ne décompressez pas les ressources ;
  • -b- n'insérez pas d'informations de débogage dans les résultats du démontage du fichier dex ;
  • --frame-path- utilisez le framework d'interface utilisateur spécifié au lieu de celui intégré à apktool. Examinons maintenant quelques options pour la commande b :
  • -f- assemblage forcé sans vérifier les modifications ;
  • -un- indiquez le chemin vers aapt (un outil pour créer une archive APK), si pour une raison quelconque vous souhaitez l'utiliser à partir d'une autre source.

Utiliser apktool est très simple ; pour cela, il suffit de spécifier l'une des commandes et le chemin d'accès à l'APK, par exemple :

$ apktool d mail.apk

Après cela, tous les fichiers extraits et désassemblés du package apparaîtront dans le répertoire de messagerie.

Préparation. Désactiver la publicité

La théorie est bien sûr bonne, mais pourquoi est-elle nécessaire si nous ne savons pas quoi faire du paquet déballé ? Essayons d'appliquer la théorie à notre avantage, à savoir modifier certains logiciels pour qu'ils ne nous montrent pas de publicité. Par exemple, que ce soit Virtual Torch - une torche virtuelle. Ce logiciel est idéal pour nous, car il regorge de publicités ennuyeuses et, en plus, il est suffisamment simple pour ne pas se perdre dans la jungle du code.


Ainsi, en utilisant l’une des méthodes ci-dessus, téléchargez l’application depuis le marché. Si vous décidez d'utiliser Virtuous Ten Studio, ouvrez simplement le fichier APK dans l'application et extrayez-le, pour lequel créez un projet (Fichier -> Nouveau projet), puis dans menu contextuel projet, sélectionnez Importer un fichier. Si votre choix s'est porté sur apktool, exécutez simplement une commande :

$ apktool d com.kauf.particle.virtualtorch.apk

Après cela, le com.kauf.particle.virtualtorch apparaîtra dans le répertoire arborescence de fichiers, similaire à celui décrit dans la section précédente, mais avec un répertoire smali supplémentaire au lieu des fichiers dex et un fichier apktool.yml. Le premier contient le code désassemblé du fichier dex exécutable de l'application, le second contient les informations de service nécessaires à apktool pour réassembler le package.

Le premier endroit que nous devrions examiner est, bien sûr, AndroidManifest.xml. Et là, nous rencontrons immédiatement la ligne suivante :

Il n'est pas difficile de deviner qu'il est chargé d'accorder à l'application les autorisations pour utiliser la connexion Internet. En fait, si nous voulons simplement nous débarrasser de la publicité, il nous suffira probablement de bloquer l'application sur Internet. Essayons de faire cela. Supprimer la ligne spécifiée et essayez d'assembler le logiciel avec en utilisant apktool:

$ apktool b com.kauf.particle.virtualtorch

Le fichier APK résultant apparaîtra dans le répertoire com.kauf.particle.virtualtorch/build/. Cependant, il ne sera pas possible de l'installer, car il n'est pas signé numériquement et sommes de contrôle fichiers (il n'y a tout simplement pas de répertoire META-INF/). Nous devons signer le package à l'aide de l'utilitaire apk-signer. Lancé. L'interface se compose de deux onglets - sur le premier (Key Generator), nous créons des clés, sur le second (APK Signer), nous signons. Pour créer notre clé privée, remplissez les champs suivants :

  • Fichier cible- fichier de sortie du magasin de clés ; il stocke généralement une paire de clés ;
  • Mot de passe Et Confirmer- mot de passe pour le stockage ;
  • Alias- nom de la clé dans le stockage ;
  • Mot de passe pseudo Et Confirmer- mot de passe de la clé secrète ;
  • Validité- durée de validité (en années). La valeur par défaut est optimale.

Les champs restants sont, en général, facultatifs – mais au moins un doit être rempli.


AVERTISSEMENT

Pour signer une application à l'aide d'apk-signer, vous devez installer SDK Android et indiquer chemin complet avant dans les paramètres de l'application.

Toutes les informations sont fournies à titre informatif uniquement. Ni les éditeurs ni l'auteur ne sont responsables de préjudice possible causés par les matériaux de cet article.

Vous pouvez maintenant signer l'APK avec cette clé. Dans l'onglet APK Signer, sélectionnez le fichier nouvellement généré, entrez le mot de passe, l'alias de clé et le mot de passe correspondant, puis recherchez Fichier APK et n'hésitez pas à appuyer sur le bouton « Signer ». Si tout se passe bien, le colis sera signé.

INFOS

Puisque nous avons signé le package avec notre propre clé, il entrera en conflit avec l'application d'origine, ce qui signifie que lorsque nous essaierons de mettre à jour le logiciel via le marché, nous recevrons une erreur.

Une signature numérique est uniquement requise logiciel tiers, donc si vous faites des modifications applications système, qui sont installés en les copiant dans le répertoire /system/app/, vous n'avez pas besoin de les signer.

Après cela, téléchargez le package sur votre smartphone, installez-le et lancez-le. Voilà, la pub est partie ! Au lieu de cela, cependant, un message est apparu indiquant que nous n'avons pas Internet ou que nous ne disposons pas des autorisations appropriées. En théorie, cela pourrait suffire, mais le message semble ennuyeux et, pour être honnête, nous avons juste eu de la chance avec une application stupide. Un logiciel normalement écrit clarifiera très probablement ses informations d'identification ou vérifiera une connexion Internet et refusera simplement de se lancer. Que faire dans ce cas ? Bien sûr, modifiez le code.

Généralement, les auteurs d'applications créent cours spéciaux d'afficher de la publicité et d'appeler les méthodes de ces classes lors du lancement de l'application ou d'une de ses « activités » (en termes simples, des écrans d'application). Essayons de trouver ces classes. On va dans le répertoire smali, puis com (dans org il n'y a que le open bibliothèque graphique cocos2d), puis kauf (exactement là, car c'est le nom du développeur et tout son code est là) - et le voici, l'annuaire marketing. À l’intérieur, nous trouvons un tas de fichiers avec l’extension smali. Ce sont des classes, et la plus remarquable d'entre elles est la classe Ad.smali, d'après le nom de laquelle il est facile de deviner que c'est celle qui affiche de la publicité.

Nous pourrions changer la logique de son fonctionnement, mais il serait beaucoup plus simple de simplement supprimer les appels à l'une de ses méthodes depuis l'application elle-même. Par conséquent, nous quittons le répertoire marketing et allons dans le répertoire de particules adjacent, puis dans virtualtorch. Attention particulière Le fichier MainActivity.smali mérite cela. C'est la norme pour Classe Android, qui est créé par le SDK Android et défini comme point d'entrée de l'application (similaire à fonctions principales en C). Ouvrez le fichier pour le modifier.

A l'intérieur il y a du petit code (assembleur local). Il est assez déroutant et difficile à lire en raison de sa nature de bas niveau, nous ne l'étudierons donc pas, mais trouverons simplement toutes les références à la classe Ad dans le code et les commenterons. Nous saisissons la ligne « Annonce » dans la recherche et arrivons à la ligne 25 :

Champ annonce privée : Lcom/kauf/marketing/Ad ;

Ici, un champ publicitaire est créé pour stocker un objet de classe Ad. Nous commentons en plaçant un signe ### devant la ligne. Nous continuons la recherche. Ligne 423 :

Nouvelle instance v3, Lcom/kauf/marketing/Ad ;

C'est là que se produit la création de l'objet. Commentons. Nous continuons la recherche et trouvons dans les lignes 433, 435, 466, 468, 738, 740, 800 et 802 des appels aux méthodes de la classe Ad. Commentons. Il semble que ce soit ça. Sauvegarder. Il faut maintenant reconstituer le package et vérifier sa fonctionnalité et la présence de publicité. Pour la pureté de l'expérience, nous renvoyons la ligne supprimée de AndroidManifest.xml, assemblons le package, signons et installons.

Notre cobaye. Publicité visible

Oups ! La publicité n'a disparu que pendant l'exécution de l'application, mais est restée dans le menu principal, que l'on voit au lancement du logiciel. Alors attendez, mais le point d'entrée est la classe MainActivity, et la publicité a disparu pendant l'exécution de l'application, mais est restée dans le menu principal, donc le point d'entrée est différent ? Pour identifier le véritable point d'entrée, rouvrez le fichier AndroidManifest.xml. Et oui, il contient les lignes suivantes :

Ils nous disent (et, plus important encore, à Android) qu'une activité nommée Start doit être lancée en réponse à la génération d'une intention (événement) android.intent.action.MAIN de la catégorie android.intent.category.LAUNCHER. Cet événement est généré lorsque vous appuyez sur l'icône de l'application dans le lanceur, il détermine donc le point d'entrée, à savoir la classe Start. Très probablement, le programmeur a d'abord écrit une application sans menu principal, dont le point d'entrée était la classe MainActivity standard, puis a ajouté une nouvelle fenêtre (activité) contenant le menu et décrit dans la classe Start, et en a fait manuellement l'entrée. indiquer.

Ouvrez le fichier Start.smali et cherchez à nouveau la ligne « Ad », on retrouve aux lignes 153 et 155 une mention de la classe FirstAd. Il est également présent dans le code source et, à en juger par son nom, il est responsable de l'affichage des publicités sur l'écran principal. Regardons plus loin, nous créons une instance de la classe FirstAd et une intention qui, selon le contexte, est liée à cette instance, puis le label cond_10, saut conditionnel qui est effectué exactement avant de créer une instance de la classe :

If-ne p1, v0, :cond_10 .line 74 nouvelle instance v0, Landroid/content/Intent ; ... :cond_10

Très probablement, le programme calcule de manière aléatoire si la publicité doit être affichée sur l'écran principal et, dans le cas contraire, passe directement à cond_10. Ok, simplifions sa tâche et remplaçons la transition conditionnelle par une transition inconditionnelle :

#if-ne p1, v0, :cond_10 goto:cond_10

Il n'y a plus de mention de FirstAd dans le code, nous fermons donc le fichier et réassemblons notre torche virtuelle à l'aide d'apktool. Copiez-le sur votre smartphone, installez-le, lancez-le. Voilà, toute publicité a disparu, ce pour quoi nous nous félicitons tous.

Résultats

Cet article est uniquement brève introduction dans les méthodes d'ouverture et de modification des applications Android. De nombreux problèmes restaient en coulisses, tels que la suppression de la protection, l'analyse du code obscurci, la traduction et le remplacement des ressources des applications, ainsi que la modification des applications écrites avec en utilisant Android NDK. Cependant, ayant connaissances de base, ce n’est qu’une question de temps pour régler tout ça.



Des questions ?

Signaler une faute de frappe

Texte qui sera envoyé à nos rédacteurs :