2019-10-29 02:57:47 +01:00
|
|
|
# Seedvault
|
2020-11-10 22:34:40 +01:00
|
|
|
[![Build](https://github.com/seedvault-app/seedvault/workflows/Build/badge.svg?branch=master)](https://github.com/seedvault-app/seedvault/actions?query=branch%3Amaster+workflow%3ABuild)
|
2018-11-14 00:12:05 +01:00
|
|
|
|
2017-09-21 04:42:15 +02:00
|
|
|
A backup application for the [Android Open Source Project](https://source.android.com/).
|
|
|
|
|
2021-08-28 14:40:07 +02:00
|
|
|
If you are having an issue/question, please look at our [FAQ](../../wiki/FAQ).
|
|
|
|
|
2021-03-05 18:05:04 +01:00
|
|
|
## Components
|
|
|
|
|
|
|
|
* [Local Contacts Backup](contactsbackup) - an app that backs up local on-device contacts
|
|
|
|
* [Storage library](storage) - a library handling efficient backup of files
|
|
|
|
* [Seedvault app](app) - the main app where all functionality comes together
|
|
|
|
|
2017-10-13 04:56:47 +02:00
|
|
|
## Features
|
2019-11-30 20:32:39 +01:00
|
|
|
- Backup application data to a flash drive.
|
|
|
|
- Restore application data from a flash drive.
|
|
|
|
- User-friendly encryption using a mnemonic phrase (BIP39).
|
|
|
|
- Automatic daily backups that run in the background.
|
2017-10-13 04:56:47 +02:00
|
|
|
|
2020-07-27 10:48:15 +02:00
|
|
|
## Requirements
|
2020-09-17 14:06:48 +02:00
|
|
|
|
|
|
|
- Android 11
|
|
|
|
|
2021-04-19 23:28:37 +02:00
|
|
|
For older versions of Android, check out [the branches](https://github.com/seedvault-app/seedvault/branches).
|
2020-07-27 10:48:15 +02:00
|
|
|
|
2017-10-13 04:56:47 +02:00
|
|
|
## Getting Started
|
2021-04-19 23:28:37 +02:00
|
|
|
- Check out [the wiki](https://github.com/seedvault-app/seedvault/wiki) for information on building the application with
|
2017-10-13 04:56:47 +02:00
|
|
|
AOSP.
|
|
|
|
|
2017-11-09 06:08:29 +01:00
|
|
|
## What makes this different?
|
2019-12-20 17:55:38 +01:00
|
|
|
This application is compiled with the operating system and does not require a rooted device for use.
|
|
|
|
It uses the same internal APIs as `adb backup` which is deprecated and thus needs a replacement.
|
2017-10-13 05:54:55 +02:00
|
|
|
|
2019-06-12 14:19:38 +02:00
|
|
|
## Permissions
|
2019-11-30 20:32:39 +01:00
|
|
|
* `android.permission.BACKUP` to back up application data.
|
2020-10-19 20:44:36 +02:00
|
|
|
* `android.permission.ACCESS_NETWORK_STATE` to check if there is internet access when network storage is used.
|
2019-11-30 20:32:39 +01:00
|
|
|
* `android.permission.MANAGE_USB` to access the serial number of USB mass storage devices.
|
2020-09-02 19:37:02 +02:00
|
|
|
* `android.permission.WRITE_SECURE_SETTINGS` to change system backup settings and enable call log backup.
|
2020-09-10 14:26:55 +02:00
|
|
|
* `android.permission.QUERY_ALL_PACKAGES` to get information about all installed apps for backup.
|
2019-12-20 17:55:38 +01:00
|
|
|
* `android.permission.INSTALL_PACKAGES` to re-install apps when restoring from backup.
|
2021-01-19 13:14:52 +01:00
|
|
|
* `android.permission.MANAGE_EXTERNAL_STORAGE` to backup and restore files from device storage.
|
|
|
|
* `android.permission.ACCESS_MEDIA_LOCATION` to backup original media files e.g. without stripped EXIF metadata.
|
|
|
|
* `android.permission.FOREGROUND_SERVICE` to do periodic storage backups without interruption.
|
2020-10-21 22:19:30 +02:00
|
|
|
* `android.permission.MANAGE_DOCUMENTS` to retrieve the available storage roots (optional) for better UX.
|
2019-06-12 14:19:38 +02:00
|
|
|
|
2019-11-30 20:32:39 +01:00
|
|
|
## Contributing
|
2021-01-11 20:38:46 +01:00
|
|
|
Bug reports and pull requests are welcome on GitHub at https://github.com/seedvault-app/seedvault.
|
2020-09-24 20:45:59 +02:00
|
|
|
|
|
|
|
This project aims to adhere to the [official Kotlin coding style](https://developer.android.com/kotlin/style-guide).
|
2019-06-12 14:19:38 +02:00
|
|
|
|
2020-10-05 15:41:07 +02:00
|
|
|
## Third-party tools
|
|
|
|
|
2021-09-02 14:29:05 +02:00
|
|
|
> **⚠ WARNING**: the Seedvault developers make no guarantees about external software projects.
|
|
|
|
> Please be aware that disclosing your secret recovery key to other software has security risks.
|
|
|
|
|
2020-10-05 15:41:07 +02:00
|
|
|
The [Seedvault backup parser](https://github.com/tlambertz/seedvault_backup_parser)
|
|
|
|
allows you to decrypt and inspect your backups.
|
|
|
|
It can also re-encrypt them.
|
|
|
|
|
2017-09-21 04:42:15 +02:00
|
|
|
## License
|
2019-12-23 02:20:12 +01:00
|
|
|
This application is available as open source under the terms of the [Apache-2.0 License](https://opensource.org/licenses/Apache-2.0).
|