# adbackup [![Build Status](https://api.travis-ci.org/bb30/adbackup.svg?branch=master)](https://travis-ci.org/bb30/adbackup) [![Build status](https://ci.appveyor.com/api/projects/status/la91b294jegvmejw?svg=true)](https://ci.appveyor.com/project/bb30/adbackup) [![Crates.io](https://img.shields.io/crates/v/adbackup.svg)](https://crates.io/crates/adbackup) backup tool for android written in rust which can either be used as a module or as a cli-tool `adbackup` uses something similar to the [auto backup mechanism](https://developer.android.com/guide/topics/data/autobackup.html) of android. Normally, if enabled, this mechanism is used to backup the android system into the Google cloud. With `adbackup` it is possible to create backups of folders, apps or the complete system. ## Setup This version of adbackup needs some initialisation work to be done before it can be used: Install `adbackup` & `adb`, add `adb` to the environment path and enable debug mode on the android device. #### Computer `adbackup` is using the [android debug bridge (adb)](https://developer.android.com/studio/command-line/adb.html) to communicate with android devices. Before using adbackup 1. install adb from the official [android developer](https://developer.android.com/studio/releases/platform-tools.html#download) site 1. Now add `adb` to your environment variable ([tutorial](https://www.xda-developers.com/adb-fastboot-any-directory-windows-linux/)) 1. [Download](https://crates.io/crates/adbackup) and install `adbackup` The computer is ready to work with `adbackup`. To check if everything is well configured, type `adbackup devices`. #### Android device To bring the android device into a state in which `adbackup` can be used, enable the debug mode: Go to 1. `Settings` 1. `About phone` 1. Press the `Build number` five times 1. Go back and select the new `Developer options` menu 1. Activate the developer options at the top of the screen and enable `Android debugging` in the list below If the device is connected to the computer `adbackup devices` should now list this device. Make sure to disable the debugging mode after you are done using `adbackup` to minimize the risk of your device being compromised. ## Limitations Every app developer can specify whether it is possible to backup their app in general, just parts of it or not at all, [here](https://developer.android.com/guide/topics/data/autobackup.html) you can read more about this topic. Because of this android feature there might be some apps which will not be included into backups generated by the android operating system. Sadly, right now there exists no better way to do android backups without rooting the device first.