Allow user to verify existing recovery code
10 files changed
tree: 96e1891eeed25a788c9232d803601355198c0b59
  1. .github/
  2. .idea/
  3. app/
  4. contactsbackup/
  5. gradle/
  6. libs/
  7. .editorconfig
  8. .gitignore
  9. Android.bp
  10. build.gradle
  11. CHANGELOG.md
  12. gradle.properties
  13. gradlew
  14. gradlew.bat
  15. LICENSE
  16. logcat-verbose.sh
  17. permissions_com.stevesoltys.seedvault.xml
  18. README.md
  19. settings.gradle
  20. whitelist_com.stevesoltys.seedvault.xml
README.md

Seedvault

Build

A backup application for the Android Open Source Project.

Features

  • 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.

Requirements

  • Android 11

For older versions of Android, check out the branches.

Getting Started

  • Check out the wiki for information on building the application with AOSP.

What makes this different?

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.

Permissions

  • android.permission.BACKUP to back up application data.
  • android.permission.ACCESS_NETWORK_STATE to check if there is internet access when network storage is used.
  • android.permission.MANAGE_USB to access the serial number of USB mass storage devices.
  • android.permission.WRITE_SECURE_SETTINGS to change system backup settings and enable call log backup.
  • android.permission.QUERY_ALL_PACKAGES to get information about all installed apps for backup.
  • android.permission.INSTALL_PACKAGES to re-install apps when restoring from backup.
  • android.permission.MANAGE_DOCUMENTS to retrieve the available storage roots (optional) for better UX.

Contributing

Bug reports and pull requests are welcome on GitHub at https://github.com/seedvault-app/seedvault.

This project aims to adhere to the official Kotlin coding style.

Third-party tools

The Seedvault backup parser allows you to decrypt and inspect your backups. It can also re-encrypt them.

License

This application is available as open source under the terms of the Apache-2.0 License.