Torsten Grote
9b4924f2d4
Clean up backup transport initialization logic
...
This commit makes creating new RestoreSets explicit.
Initializing a backup transport now actually cleans its data as the AOSP
documentation demands. This should be fine as we usually do a fresh
backup after a new initialization.
Contrary to before, an initialization does not create new RestoreSets
anymore, but works within the existing set. For now, only manually
choosing a new storage location creates a new RestoreSet.
2020-09-08 12:22:59 +05:30
Torsten Grote
d5d8cbb73a
Show percentages in progress notification and x of n status at the end
...
Fine-grained progress reporting causes apps to show up twice which is
confusing. Also @pm@ metadata and opt-out APKs are too much detail for
normal users. So we decided to only show a percentage in the progress
notification.
When the backup finished, the app now shows "x of n apps backed up"
which is more positive when the previous negative message of how many
apps were not backed up.
Some further minor tweets were done to app counting to report proper
totals.
2020-09-01 00:56:06 +05:30
Torsten Grote
b1154250dd
Let backup notification report more fine-grained progress
...
This adds @pm@ record backup and APK backup of opt-out apps to the
progress reporting since these two operations are slow when using a
cloud storage SAF backend.
2020-09-01 00:56:06 +05:30
Torsten Grote
bc6362fbd6
Improve DocumentsProvider tests against Nextcloud
2020-09-01 00:56:06 +05:30
Chirayu Desai
93a7ec8143
Merge pull request #109 from grote/saf-optimized
...
Improve likelyhood that a backup with Nextcloud succeeds
2020-08-26 22:27:42 +05:30
Torsten Grote
69cb6a072e
Explain better how we force initialization via the SettingsManager
2020-08-13 16:34:50 -03:00
Torsten Grote
eadd9652d0
Make app blacklist accessible by multiple threads
...
Might fix #83
2020-08-13 16:34:49 -03:00
Torsten Grote
38afd15828
Only consider apps that really opt-out of backup for early APK backup
2020-08-13 15:09:02 -03:00
Torsten Grote
20f4308b11
Ensure streams get closed eventually
2020-08-13 14:58:53 -03:00
Torsten Grote
c738b4a3fd
Fix icon color of storage locations (Nextcloud icon got tinted)
2020-08-13 10:16:50 -03:00
Torsten Grote
ab6c0f3c9b
Make PluginTest work for Nextcloud as well
...
Only issue left was a different maximum file name length for Nextcloud
2020-08-12 15:21:22 -03:00
Torsten Grote
acecfda671
Replace all instances of DocumentFile#findFile with #findFileBlocking
...
Also start sticking closer to the official Kotlin formatting style
2020-08-12 11:29:40 -03:00
Torsten Grote
b360a8ff1c
Check for loading cursor also when checking if files exist
...
Loading cursors can happen with cloud-based documents providers
such as Nextcloud.
When they return a cursor that is still loading,
we might continue with stale information.
So now we wait for a loading cursor to be fully loaded
before continuing.
2020-08-12 09:46:53 -03:00
Chirayu Desai
91276268bb
Merge pull request #107 from grote/plugin-tests
...
Add instrumentation tests for storage plugin (SAF)
2020-08-12 18:04:45 +05:30
Torsten Grote
1913621fd3
Add test to reproduce the loading cursor phenomena with Nextcloud
...
See: https://commonsware.com/blog/2019/12/14/scoped-storage-stories-listfiles-woe.html
2020-08-12 09:00:44 -03:00
Torsten Grote
523901a0a9
Add instrumentation tests for storage plugin (SAF)
2020-08-12 09:00:43 -03:00
Torsten Grote
e9b79d88b9
Upgrade gradle
2020-08-12 09:00:43 -03:00
Chirayu Desai
d0459f75b5
Merge pull request #90 from mikeNG/develop
...
String improvements
2020-07-03 03:16:32 +05:30
Michael Bestas
64628408d6
String improvements
...
* Don't use camel case, following AOSP applications
* Set app name and Nextcloud as untranslatable
2020-07-03 00:32:49 +03:00
Steve Soltys
8141e255ac
Merge pull request #76 from ypid/fix/minor
...
Remove wrongly inserted "g" char from AndroidManifest.xml
2020-03-08 17:32:34 -04:00
Robin Schneider
6f3fa0ff2b
Remove wrongly inserted "g" char from AndroidManifest.xml
...
Introduced in: 78e217c7d8
2020-03-08 22:19:10 +01:00
Steve Soltys
78e217c7d8
Bump version code in Android manifest
2020-03-07 15:46:02 -05:00
Steve Soltys
bd52749c76
Version bump - 1.0.0
2020-03-07 15:41:49 -05:00
Steve Soltys
60e84808c5
Merge pull request #73 from grote/notification-fix
...
Fix Notification icon and hide navigation bar in SetupWizard
2020-01-22 14:31:23 -05:00
Torsten Grote
65905a7160
Hide navigation bar in SetupWizard for more visual consistency
2020-01-22 12:31:14 -03:00
Torsten Grote
3cdd381b51
Don't cache notification builders to always show the right icon
2020-01-22 12:25:32 -03:00
Steve Soltys
ee6d359c50
Merge pull request #72 from grote/70-app-backup-toggle
...
Allow the user to exclude apps from backup
2020-01-20 14:03:44 -05:00
Torsten Grote
c52d372442
Don't make the app immersive in SetupWizard
...
Fixes third item in #63
2020-01-20 11:58:38 -03:00
Torsten Grote
324da2a9e9
Allow the user to exclude apps from backup
...
Closes #70
2020-01-20 11:58:38 -03:00
Torsten Grote
c92b9a3606
Credit Glenn Sorrentino on About page
2020-01-20 10:01:44 -03:00
Torsten Grote
5d38f061d9
Make some app status list tweaks suggested by our designer Glenn
2020-01-20 09:53:51 -03:00
Steve Soltys
3ae600ea8e
Merge pull request #71 from grote/69-app-backup-status
...
Show list of apps and their backup status
2020-01-19 12:50:46 -05:00
Torsten Grote
a98364efbe
Back up APKs as early as possible to not miss any
...
Fixes #68
2020-01-18 16:42:26 -03:00
Torsten Grote
fcf17fe23a
Show list of apps and their backup status
2020-01-18 16:38:55 -03:00
Steve Soltys
6afdb7f4f7
Merge pull request #67 from grote/51-removable-storage-ux
...
Improve UX for auto-restore when using removable storage
2020-01-17 18:39:50 -05:00
Steve Soltys
97f82bc79e
Merge pull request #64 from grote/apk-backups
...
Optional App APK Backups
2020-01-14 23:58:40 -05:00
Torsten Grote
de16032905
Don't use wildcard imports, because they are considered harmful
2020-01-14 15:40:56 -03:00
Torsten Grote
6ed522bfb7
Show one single progress bar in the notification
...
Also don't show individual package results,
but a single dismissible status notification in the end.
Closes #59 , #61
2020-01-14 15:18:16 -03:00
Torsten Grote
2bcf82d607
Show heads-up notification when auto-restore fails due to removed storage
2020-01-14 10:17:38 -03:00
Torsten Grote
783e676be2
Optimize the restore of a single application (e.g. auto restore)
...
This restores only the @pm@ keys that are really needed
and thus speeds up installation with auto restore considerably
when using cloud storage such as NextCloud for example.
2020-01-14 10:17:37 -03:00
Torsten Grote
43184f4d23
Add note to auto-restore setting in case removable storage is used
...
This warns the user that auto-restore will only work when their storage
is plugged in.
2020-01-14 10:17:37 -03:00
Torsten Grote
22be36e2a7
When an app could not be restored, show the likely reason for it
2020-01-14 10:11:17 -03:00
Torsten Grote
74183d40d6
Add system app flag to metadata and check before installing system apps
...
that they are present as an older system app on the restore system.
Also ignore system apps without data to backup.
2020-01-14 10:11:17 -03:00
Torsten Grote
2a4ff39531
Simplify PackageService and use standard PackageManager
...
@stevesoltys this removes your old way of retreiving installed packages
via getInstalledPackages(0, UserHandle.USER_SYSTEM) as I couldn't find a
difference to the official way.
Also IGNORED_PACKAGES isn't needed anymore since
filterAppsEligibleForBackupForUser() already filters those out.
2020-01-14 07:45:41 -03:00
Torsten Grote
fea53a759f
Also back-up APKs of apps that are not allowed to have their data backed up
2020-01-14 07:45:41 -03:00
Torsten Grote
3d296e1335
Also back up APKs of apps that have no data or are above quota
...
This should also affect apps that have other errors during the backup
process, but it does not affect apps that opt-out of backup completely.
First part of #65
2020-01-14 07:45:41 -03:00
Torsten Grote
3f73119b52
Show restore data progress bar and improve readability of log messages
2020-01-14 07:45:40 -03:00
Torsten Grote
1924db7779
Move date restore view state into ViewModel to survive configuration changes
2020-01-14 07:45:40 -03:00
Torsten Grote
5632f11878
Show when package restore failed
2020-01-14 07:45:40 -03:00
Torsten Grote
9f01d09962
Don't get or write to full backup output stream before we are not sure there will be data to write
2020-01-14 07:45:39 -03:00