the Internet Windows Android

Download zip folder program for Android. Androzip - multifunctional archiver program for super users

The category of programs for working with archives is very niche, nevertheless there are situations when it is imperative to open an archive file on the smartphone sent by e-mail. With this task, any little less functional can cope file manager. However, in most cases, they are limited to support for ZIP format, so it is better to have a reliable archiver at hand.









ZARCHIVER is an absolutely free tool and rightly well-deserved archiver for Android with the ability to unpack and view the contents of most archives, including multi-volume. The application is able to compress in 7z, zip and tar with password and separation on the volume, and also allows you to change the archives, by deleting or adding files to them.

ZARCHIVER supports multi-threaded work, which will be useful for multi-core processors, Also, the UTF-8 encoding, which means you will not encounter problems when working with Russian file names in archives. In addition, the program has a simple interface and flexible settings.










Another popular tool for archiving and unzipping different types Files that works with ZIP, Zipx, 7Z, RAR and LHA formats. However, it is able to compress the utility only in Zip. WinZip supports partial extraction of selected files in the archive, and also has a built-in image viewer, text files, web pages, word documents and PDF files. What makes this application unique is integrating with cloud services. With WinZip, you can connect directly to your credentials in Dropbox and Google Drive to archive, unpack and share content. But, unfortunately, this feature, like the archive encryption, is paid. The application has another bonus that is not related to archiving, but may be useful to some users. This is the option of cleaning images, the size of which exceeds the specified boundary value.





Sometimes some applications on Android are not satisfied with the user. As an example, you can cite udigue advertising. And it happens and so - everyone is good for the program, but only there is no translation in it or a curve, or there is no one. Or, for example, the trial program, and get full version There is no possibility. How to change the situation?

Introduction

In this article we will talk about how to disassemble the APK package with the application, consider its internal structure, disassemble and decompiling byte code, and try to make several changes to applications that can bring us one or another.

To do all this independently, will need at least initial knowledge. java languageon which the Android applications are written and xML languageThis is used in Android everywhere - from the description of the application itself and its access rights before storing the lines that will be displayed. Also need the ability to handle specialized console software.

So, what is the package apk, which covers absolutely all software for Android?

Decompiling applications

In the article, we worked only with the disassembly application code, however, if you make more serious changes in large applications, the SMALI code will be much more complicated. Fortunately, we can decompile the DEX code in a Java code, which will be not original and not compiled back, but much easier to read and understand the logic of the application. To do this, we will need two tools:

  • dex2Jar - the Dalvik byte-code translator in the JVM byte code, on the basis of which we can get the code in the Java language;
  • jD-GUI is a decompiler itself, which allows you to get a readable Java code from the JVM byte-code. Alternatively, you can use jad (www.varaneckas.com/jad); Although it is quite old, but in some cases generates more readable code than JD-GUI.

Use them follows. First, launch Dex2JAR, pointing out the path as an argument to APK-package:

% Dex2jar.sh Mail.apk.

As a result, the Mail.jar java package will appear in the current directory, which can already be opened in JD-GUI to view the Java code.

APK package device and getting them

Package android applicationsIn fact, it is an ordinary zip file, to view the contents and unpacking of which no special tools are required. It is enough to have an archiver - 7zip for Windows or a console UNZIP in Linux. But it concerns wrapper. What inside? Inside, we generally have such a structure:

  • META-INF / - contains a digital certificate of the application certifying its creator, and the checksum amounts of the package files;
  • rES / - various resources that the application uses in its work, such as images, a declarative description of the interface, as well as other data;
  • Androidmanifest.xml. - Application description. This includes, for example, a list of required permissions required android version and the required screen resolution;
  • classes.dex - compiled byte application application for virtual machine Dalvik;
  • resources.arsc. - also resources, but another kind - in particular, lines (yes, this file can be used for Russification!).

The listed files and directories are if not in all, then, perhaps, in the absolute majority APK. However, it is worth mentioning a few not so much common files / directories:

  • assets. - analogue of resources. The main difference is to access the resource. It is necessary to know its identifier, the Asset list can be obtained dynamically using the AssetManager.List () method in the application code;
  • lib - Native Linux libraries written using NDK (Native Development Kit).

This catalog uses game manufacturers, placing a game engine there, written in C / C ++, as well as creators of high-performance applications (for example, Google Chrome.). The device figured out. But how to get a file of the package of the application of interest? Since without root from the device to pick up APK files is not possible (they lie in the / Data / App directory), and it is not always appropriate to handle, there is at least three ways to get the application file to the computer:

  • apk Downloader extension for chrome;
  • application Real APK LEECHER;
  • various file sharing and lumpy.

Which one to use is a matter of taste; We prefer to use individual applications, so we describe the use of Real APK LEECHER, especially as it is written on Java and, accordingly, it will work at least in Windows, even in Nixes.

After starting the program, you must fill out three fields: Email, Password and Device ID - and choose a language. The first two are e-mail and your googleaccount password, which you use on the device. The third is the identifier of the device, and it can be obtained by typing the code on the dialer # #8255## And then finding the Device ID string. When filling, you need to enter only the ID without the Android prefix.

After filling and saving, the message "Error While Connecting to Server" pops up. It is not related to Google Play.Therefore, boldly it ignore it and look for packages.

View and modification

Suppose you have found the package that interests you, downloaded, unpacked ... And when trying to view any XML file, it was surprised to find that the file is not text. What to decompile and how to work with packages? Is it really necessary to put an SDK? No, the SDK is not at all necessary. In fact, for all steps to unpack, modify and package packaging APK need the following tools:

  • archiver Zip. for unpacking and searches;
  • smali. - assembler / disassembler byte-code of the Dalvik virtual machine (code.google.com/p/smali);
  • aapt. - a resource tool (by default resources are stored in binary form to optimize application performance). It is included in the Android SDK, but can be obtained separately;
  • signer. - A tool for digital signature of the modified package (bit.ly/rmrv4m).

You can use all these tools individually, but it is inconvenient, therefore it is better to use a higher-level software built on them. If you work in Linux or Mac OS X, then there is a tool called apktool. It allows you to unpack resources in the original type (including binary XML and ARSC files), reoper a package with modified resources, but does not know how to sign packets, so run the SIGNER utility will have to manually. Despite the fact that the utility is written in Java, its installation is quite non-standard. First you should get the JAR file itself:

$ 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 \u003d ~ / Bin: $ Path

If you work in Windows, it has an excellent tool calledVirtuous Ten Studio, which also accumulates all these tools (including APKTOOL itself), but instead of the CLI interface provides the user with an intuitive graphical interface with which you can perform operations on unpacking, disassembling and decompiling into several clicks. This donation-ware tool, that is, sometimes appears windows with a proposal to get a license, but this is, in the end, you can suffer. It does not make any point in describing it, because you can understand the interface in a few minutes. But apktool, due to its console nature, should be discussed in more detail.


Consider the Apktool options. In short, there are three main commands: D (Decode), B (Build) and if (Install Framework). If everything is clear with the first two teams, then what is the third, conditional operator? It unpacks the specified UI framework, which is necessary in cases where you displays any system package.

Consider the most interesting options of the first team:

  • -s. - do not disassemble the DEX files;
  • -r. - Do not unpack resources;
  • -b. - do not insert debug information into the results of disassembling the DEX file;
  • --Frame-Path. - Use the specified UI framework instead of the built-in apktool. Now consider a couple of options for the B team:
  • -f. - forced assembly without checking changes;
  • -a. - Indicate the path to AAPT (tool for assembling APK-archive), if you want to use it from another source for some reason.

APKTOOL is very easy to use, it is enough to specify one of the commands and the path to APK, for example:

$ apktool d mail.apk

After that, all extracted and disassembly package files will appear in the Mail directory.

Preparability. Turn off advertising

The theory is, of course, well, but why is it needed if we do not know what to do with a unpacked package? Let's try to apply the theory with benefit for yourself, namely, we modify some softyn so that it does not show us advertising. For example, let it be Virtual Torch - a virtual torch. For us, this software will fit perfectly, because it is striking with annoying advertising and is also quite simple, so as not to get lost in the codes.


So, with one of the following methods, download the application from the market. If you decide to use Virtuous Ten Studio, simply open the APK file in the application and unpack it, for what to create a project (File -\u003e New Project), then in context menu Project Choose Import File. If your choice fell on apktool, it is enough to execute one command:

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

After that, the COM.KAUF.Particle.VirtualTorch directory will appear a file tree similar to that described in the previous section, but with an optional Smali directory instead of Dex files and a apktool file .yml. The first contains a disassembly application code of the executable DEX file of the application, the second - the service information needed by APKTOOL to build a package back.

The first place where we must look are, of course, androidmanifest.xml. And here we immediately celebrate the following line:

It is not difficult to guess that she is responsible for providing the application to the use of the Internet connection. In fact, if we want to just get rid of advertising, we will most likely have enough to ban the Internet application. Let's try to do it. We delete the specified string and try to collect software using APKTOOL:

$ apktool b com.kauf.particle.virtualTorch

The com.kauf.particle.VirtualTorch / Build / Build / Build / Build / Build / BUILD / will appear. However, it will not be possible to install it, as it does not have a digital signature and control sums Files (there is simply no META-INF directory in it). We must sign a package using the APK-SIGNER utility. Started. The interface consists of two tabs - on the first (key generator) we create keys to the second (APK Signer). To create our private key, fill in the following fields:

  • Target file. - the output key storage file; It is usually stored one pair of keys;
  • Password. and Confirm. - Password for the repository;
  • Alias. - the name of the key in the repository;
  • Alias \u200b\u200bPassword. and Confirm. - password secret key;
  • Validity - validity period (in years). The default value is optimal.

The remaining fields, in general, are optional - but it is necessary to fill at least one.


Warning

To sign the application using APK-Signer, you must install Android SDK and specify the full path to it in the application settings.

All information is provided solely for informational purposes. Neither the editors nor the author are responsible for any possible harm caused by the materials of this article.

Now this key can be signed apk. On the APK Signer tab, select the newly generated file, enter the password, the alias of the key and the password to it, then find file APK And boldly press the "SIGN" button. If everything goes fine, the package will be signed.

Info.

Since we have signed a package by our own key, it will conflict with the original application, which means that when you try to update my softy in the market, we will get a mistake.

Digital signature is needed only by third-party software, so if you are engaged in modification system applicationsMounted by copying to the / System / App / App / App / app, you do not need to sign them.

After that, we throw off the package on your smartphone, install and run. Voila, advertising disappeared! Instead, however, a message appeared that we have no Internet or there are no appropriate permissions. In theory, this could have enough, but the message looks annoying, and, and, honestly, we were just lucky with a blunt application. Normally written software, most likely, will clarify its powers or check the presence of an Internet connection and otherwise it will simply refuse to start. How to be in this case? Of course, edit the code.

Usually the authors of the application create special classes for advertising and cause methods of these classes during the launch of the application or one of its "activities" (simplistic speaking, application screens). Let's try to find these classes. We go to the Smali directory, then COM (in ORG only the open Cocos2D graphics library), followed by Kauf (it is there, because this is the name of the developer and there is all its code) - And here it is, the Marketing catalog. Inside, we find a bunch of files with the expansion of Smali. These are classes, and the most remarkable class AD.Smali is most noteworthy, by the name of which it is not difficult to guess what it brings advertising.

We could change the logic of its work, but much easier will be stupidly remove the challenges of any methods from the application itself. Therefore, we leave from the Marketing directory and go to the nearby Particle directory, and then in VirtualTorch. Special attention here deserves the MainActivity.smali file. This is a standard for Android class, which is created by Android SDK and is installed as an input point of the application (analogue of the Main function in C). Open the file to edit.

Inside is the SMALI code (local assembler). It is quite tangled and difficult to read by virtue of its low-level nature, so we will not study it, but just find all the references to the class AD in the code and comment on them. Drive the string "AD" in the search and fall on the line 25:

Field Private AD: LCOM / KAUF / MARKETING / AD;

The AD field is created here for storing the class AD object. Let's comment using the ### sign set before the string. We continue to search. Row 423:

NEW-Instance V3, LCom / Kauf / Marketing / AD;

Here is the creation of an object. Comment. We continue to search and find in lines 433, 435, 466, 468, 738, 740, 800 and 802 appeals to methods of class AD. Comment. Look like that's it. We save. Now the package must be collected back and check its performance and availability of advertising. For the purity of the experiment, we return the remote from the AndroidManifest.xml string, collect the package, subscribe and install.

Our experimental rabbit. Seen advertising

Op-Pa! Advertising disappeared only during the application, but remained in the main menu that we see when we run soft. So, wait, but after all, the entry point is the MainActivity class, and the advertisement disappeared during the application, but remained in the main menu, then the entry point is different? To reveal the true entry point, open the AndroidManifest.xml file. And yes, it has the following lines:

They tell us (and, more importantly, android) that activity with the name START must be running in response to the generation of the intent (events) Android.Intent.action.Main from the category Android.intent.category.launcher. This event is generated when tapped on the application icon in the Lancher, so it determines the entry point, namely the Start class. Most likely, the programmer first wrote the application without a major menu, the entry point to which was the standard MainActivity class, and then added a new window (activity) containing the menu and described in the Start class, and manually made it input point.

Open the START.SMALI file and again looking for the AD string, we find in line 153 and 155 mention of the FIRSTAD class. He also has in the source and, judging by the name, is just responsible for displaying ads on the main screen. We look further, there is an instance of an instance of the FIRSTAD class and the intent, according to the context of having a relation to this instance, and then the Cond_10 label, the conditional transition to which the accuracy is carried out before creating an instance of the class:

IF-NE P1, V0,: COND_10 .Line 74 NEW-Instance V0, Landroid / Content / Intent; ...: Cond_10

Most likely, the program is somehow randomly calculates whether to show advertising on the main screen, and, if not, jumps immediately to Cond_10. OK, we simply simplify the task and replace the conditional transition to the unconditional:

# If-ne P1, V0 ,: Cond_10 Goto: Cond_10

There are no more FIRSTAD references in the code, so we close the file and again collect our virtual torch using APKTOOL. Copy on your smartphone, install, run. Voila, all advertising disappeared, with which we congratulate all.

RESULTS

This article is only a brief introduction to the methods of opening and modifying Android applications. For the scenes, many questions remained, such as removing protection, analysis of the obfused code, translation and replacing application resources, as well as the modification of applications written with using Android NDK. However, having basic knowledge, understand all this - only the question of time.

Archives for Android are needed by many, for whom work on the smartphone sometimes continues along the way home in the train or subway.
Many are used to using WinRar and similar programs for packaging data in the archives on a stationary PC, with the appearance and fast growth of Android OS habits remain, and sometimes archive data or extract them from the archive directly on the phone is simply necessary. Actually, so today we choose best archiver For android.

List of applicants:
1.
2.
3.
4.
5.

So, in front of us five different archivers for operating system Android, let's start acquaintance with each of them and choose the best.

Androzip root File Manager

One of the very first archivers that appeared on Android OS, back in 2009, the application began to grow rapidly and had thousands of fans, at that time there were not even competitors. With the help of Androzip, you can easily copy, move, delete, extract from the archive and archive files of any size. On the this moment Androzip File Manager has about 40 million active users And the digit is constantly growing.

Format support:

- RAR (extraction)


- BZIP2 (extraction)
- 7z (extraction)

Screenshots:

PowerGrasp.


Stylish and convenient archiver with file manager poundation and support for basic archiving extensions. There is support for data transfer via Bluetooth. The built-in file manager has all the necessary, standard, functions, such as copying, inserting, cutting, moving it. There is support for the Russian language.

Format support:
- Zip (archiving \\ Removing)
- RAR (extraction)
- tar (archiving \\ Removing)
- 7z (Archiving \\ Removing)

Screenshots:

Archidroid


Simple and at the same time a fairly functional archiver for Android. A positive feature of this archiver can be considered support for multi-archives (archives from several parts in RAR format). You can also install Archidroid as the default archiver, thereby speeding up the process of unpacking files when downloading from the Internet.

Format support:

- tar (archiving \\ Removing)

- 7z (extraction)
- GZIP (extraction)
- BZIP2 (extraction)

Screenshots:

Unrar pro.


A simple archiver does not require great cliche of resources, but the functionality of the application is not particularly developed, compared with competitors. There is support for unpacking archives with passwords and optimized code, which gives a significant increase in working capacity, compared with the standard version of UNRAR.

Format support:
- Zip (archiving \\ Extraction \\ Password support)
- RAR (extracting password support)

Screenshots:

Zarchiver


Although Zarchiver turns out the last archiver in the list, but he can truly be considered the best. The rich functionality of the application simply tears on the part of competitors, the speed of work sometimes simply amazes, and it is at an altitude due to the multi-threaded work of the archiver. In distant from competitors, ZARCHIVER has no problems with Cyrillic texts, work perfectly thought out simultaneously with several files, has quick view File Properties (Type, Size, MD5, Date Change .. ITD). With ZARCHIVER, you can view files in archives without extracting, which is sometimes useful. Excellent friendly with OS is excellent from 1.6 and higher.

Format support:
- zip (archiving \\ Removing \\ Password support)
- 7z (archiving \\ Removing password support)
- BZIP2 (archiving \\ Removing)
- GZIP (Archiving \\ Removing)
- XZ (archiving \\ Removing)
- tar (archiving \\ Removing)
- RAR (extraction)
- ISO (extraction)
- Arj (extract)
- LZH (extraction)
- LZMA (extraction)
- CAB (extract)
- Xar (extraction)
- DEB (extraction)
- RPM (extraction)
- TBZ (extraction)
- TGZ (Extraction)
- APK (View \\ Add to Archive / Removal from Archive)


RAR - An indispensable program for android devices necessary for opening and unpacking .Rar files. It will suit most users who want to unzip data in the phone or tablet without computer participation.

How to open rar on android is easy and simple

It is enough to download RAR on Android so that you can unzip.rar or.zip data. Probably everyone came across a problem when downloading files from the Internet on mobile device, they had rAR format or zip and did not open standard applications in phone. There are less often TAR, GZ, BZ2, XZ, 7Z, ISO, ARJ archives, which also require an additional installed software - unpacking.

It is not necessary to go far, on our site the site there are games in APK format, walking in a pair with a cache in the archive. After downloading the question arises - how to open rAR file? Therefore, to facilitate and simplify the installation of such games, we recommend downloading the RAR application.

I would like to note, this archiver reads and recognizes almost all the well-known archives, including the most latest versions. With him, you can create archives yourself, compress content and further send in any convenient way.

Rar Archiver for Android - best tool To open and manage compressed files with all functions computer version WinRar!