I got some huge games which I don't play regularly but don't want to delete either. Is it possible to backup those apps as apk so that I can install them offline later? I'm not talking about backing up only the app data, many tools exist for that purpose. I want the ability to install the app again offline at a later time. Also, this is not necessarily an app suggestion request, any method to achieve this is OK with me.
A very easy way is ES File Explorer from Google Play Store.
Edit: This app ES File Explorer has been removed from Play Store and is no longer available (the app was sold an the new author added malicious code to the app).
You can browse to your
/system/appfolder (for system apps)
/data/appfolder (for user apps; requires root to be accessed)
and copy them to your
/sdcard (or anywhere else).
Copying multiple files with ES File Explorer is very easy. Just long hold one of the files, then put check marks on all the files you want to copy. Then browse to the folder (on your sdcard) where you want to place them.
Connecting to your computer via your usb cable will allow you to backup your sdcard content to your computer.
Update (Accessing the protected data/apps area):
I notice the
/data/ directory is not readable. You can pull any of the content if you know it by name. I'll describe a command-line (cli) solution to get the names and the files. However, the backup tools suggested by Izzy are the easiest way to go.
This is a step by step method to get the list of packages and pull the packages using the commandline:
Download and Install the Android SDK package (or see Is there a minimal installation of ADB? for a solution requiring much less space, if you're not intending to develop Android apps). While you'll have access to just about everything in the world (Android), don't be too overwhimed... just focus on an immediate objective, and all the other features can be for a different day.
Add a path to these two directories of the package install (
[installedpath]/platform-toolsfor a full SDK installation).
Now, with the Android plugged in via the usb, run this to get the full list of installed apps:
$ adb shell 'pm list packages'
You now have a list the names of all your install apps.
-fparameter to get the full pathname of a desired package by specifying a search string found in the previous list:
$ adb shell 'pm list packages -f reader'
Now pull the full pathname of the package you want to get with:
## adb pull [filepathname] [destination path] ## $ adb pull /data/app/com.ebooks.ebookreader-2.apk ~/mybackupdir
The steps might appear to be complicated, but they are easier done than said. Once you perform it a few times, you'll find it very easy to pull any app from your device. You can also write a script to do this as your own personal backup utility.
While there are gui alternatives as mentioned in the alternate answer, I strongly recommend looking at the features of the adb commands which includes full backups... the option for users to select precisely what they want backed up and where.
Installing the full Android SDK will give fuller access to components of your android device (from the commandline).
Look at the commands:
$ adb -help
Look at the backup section (of the help screen):
adb backup [-f <file>] [-apk|-noapk] [-obb|-noobb] [-shared|-noshared] [-all] [-system|-nosystem] [<packages...>] - write an archive of the device's data to <file>. If no -f option is supplied then the data is written to "backup.ab" in the current directory. (-apk|-noapk enable/disable backup of the .apks themselves in the archive; the default is noapk.) (-obb|-noobb enable/disable backup of any installed apk expansion (aka .obb) files associated with each application; the default is noobb.) (-shared|-noshared enable/disable backup of the device's shared storage / SD card contents; the default is noshared.) (-all means to back up all installed applications) (-system|-nosystem toggles whether -all automatically includes system applications; the default is to include system apps) (<packages...> is the list of applications to be backed up. If the -all or -shared flags are passed, then the package list is optional. Applications explicitly given on the command line will be included even if -nosystem would ordinarily cause them to be omitted.)
You can use the Android Backup Extractor to explore the compressed backup file created by the adb utility.
Restoring the backup to the android is a simple "-restore" command:
$ adb restore <file>
The Android Backup Extractor provides a way to explore the backup and pick out individual files (such as the apk's as in the OP's objective) to store or preserve.
The explorer package includes a variety of multi-platform tools, such as Java, perl, and cygwin.
You can extract the backup with (using the java extract opton):
## this line converts the android backup into a tar file ## $ java -jar abe.jar unpack backup.ab backup.tar
Out side of my initial cli answer, the most precise GUI app to accomplish the OP's specific question is AirDroid. It's free, extremely user friendly and intuitive to use.
To use, run the app. It gives a local IP address for typing into a web browser. The link will give you a UI that resembles and Android home screen. Click on the "Apps" icon and select one or more apps to download. You can install or reinstall the Apps using the same interface.
There are several other GUI alternatives (graphical user interfaces) available, e.g. QtADB (multi-platform) or, for Windows users, also the excellent Droid Explorer by our member Ryan Conrad (see e.g. Full Backup of non-rooted devices; for more, also see our adb tag-wiki).
There are several apps specialized on this topic. The probably best known is AppMonster, which I use (in the Pro version) for years now, very reliable (and very active dev). For alternatives and more details, please take a look at:
Everyone is suggesting closed source softwares here which are perhaps Adware. One should rather use Ghost Commander File Manager which has an Apps section. Copying apps to mounted (accessible in layman terms) storage is pretty straightforward.
Why not using SD MAID?
I've been using this tools to backup my Android apps so far. It's lightweight, and easy to use to get the apk from installed apps (without root needed).
- Download the SD MAID from Google Playstore
- Open SD MAID menu, swipe from the left side.
- Choose AppControl to show app that installed on your Android phone.
- Tap on that application you want
- Then tap Exports the .apk menu
- You get you want!
BTW, the default location of the output (APK) will saved in Download folder (internal storage).
There's APK Export which is good just for that purpose: it's only 112 kB and it's free with no ads or in-app suggestions to get the pro version.
Based on the answer from Mahesh Hegde, I can confirm that Total Commander can also save the apps's APK. It does not require root or any extra settings.
In the main screen, there is the "Installed Apps" section. Simply select and copy the app to any folder in the other tab.
The app is available as a direct download from the developer or from app stores.
You can use App Backup & Restore application to get the backup of application as an apk file.