brarcher / loyalty-card-locker

Stores your barcode-based store/loyalty cards on your phone
GNU General Public License v3.0
172 stars 29 forks source link

Add auto backup #238

Open natrius opened 6 years ago

natrius commented 6 years ago

Add the option to autobackup after a new card is saved.

huste commented 5 years ago

In addition, I'd like to create the backup in a specific place, so that my nextcloud sync tool finds the export and uploads it to my cloud...

trymeouteh commented 5 years ago

To have auto backup to the cloud or even syncing to the cloud will be handy. If you lose your phone, adding all the cards back into the app can take quite some time to do.

Please add a encrypted auto backup. I would like to suggest using 7z for encryption.

brarcher commented 5 years ago

I'll probably not work on this feature myself. If someone were interested in contributing it I'd be happy to review the pull request.

As a note, this app does not have the network permission. This is intentional. If someone were to add a backup option, it may have to be done via a second app. Maybe a plugin app that receives card updates or the like. The solution would need to involve not adding the network permission to this app.

As for the format of the backup, as another app would handle the data the format is unimportant (and thus 7z is fine). Support for importing 7z data would need to be added to this app. To be consistent it may also be worth while adding support for exporting to 7z (mentioned in https://github.com/brarcher/loyalty-card-locker/issues/285)

natrius commented 5 years ago

No need for network anything. Just add a option like "Auto save when new card is added" and "Choose destination" everything else can be done with nextcloud autoupload for example.

Also, for this feature, there is no encription needed. Just keep the current one and at least let us choose the destination folder, that would be awesome.

brarcher commented 5 years ago

Recently I added https://github.com/brarcher/loyalty-card-locker/pull/311, which allows a backup manager on the system to backup and restore the app's data. This should allow a use case such as:

If you lose your phone, adding all the cards back into the app can take quite some time to do.

to be taken care of. Do you agree? Given this, is it necessary to have a separate automatic backup mechanism directly in the app?

huste commented 5 years ago

If somebody can recommend a stable, preferably open source, backup solution not requiring root, that creates complete backups locally on the SD card which I can then sync to my nextcloud instance, maybe that's enough.

Then again, an auto-export after editing cards to a prefefined directory, keeping exports from the last say 6 months, could be a nice feature independent of external backup solutions.

EDIT: added the part about not requiring root...

natrius commented 5 years ago

I would just need an option to choose the backup location, as it now just safes into sd-card root (i think). ideall an autobackup after a new card is added.

I was asking this because i'm not using any backup-solution right now because linageos has none builtin. Titanium is not available for me (and i don't like it that much), but there is oandbackup available in the f-droid store, maybe thats worth a try for you at least @huste

Still, appreciate your effort @brarcher thanks. When something like that is not added, i guess i can't change it on my own :D

huste commented 5 years ago

@natrius: No, oandbackup is nothing fo me, my device is not rootable.

natrius commented 5 years ago

Oh, missed that, i'm sorry. I'm not aware of such an possibility.

Seems like you have to:

  1. Open the app
  2. press the backup button
  3. close the app
  4. open the filebrowser
  5. move the file to the autoupload folder from nextcloud manually
  6. let nextcloud autoupload the file

Thats the way i'm doing it right now, because unfortunately its not possible to choose the backup locatio :(

huste commented 5 years ago

@natrius: yes, that's what I do right now If I don't forget. So the simplest solution would be to reqeust external write permission and if granted an option for auto-save after editing. I vote for keeping this issue open.

natrius commented 5 years ago

@brarcher

Could you change the default-safe folder from sd-card root to a "backup_loyaltycard" subfolder at least? This would be the easiest solution for now, because we could set up autoupload for this folder and from then on just press "Backup" in the app itself, if the other changes are to difficult to make.