Torsten Grote
6d9c18bd29
Checker: account for possibility that one chunkId maps to more than one blob
2024-11-01 16:23:54 -03:00
Torsten Grote
4f5199ce27
Make APK backup self-healing
2024-11-01 10:38:29 -03:00
Torsten Grote
15e8850e5e
Don't allow running app data check while backup is running
2024-11-01 10:38:29 -03:00
Torsten Grote
45d710270a
Restrict Checker.concurrencyLimit to 3 when backend requires network
2024-11-01 10:38:28 -03:00
Torsten Grote
166f81b3a8
Add unit tests for Checker
2024-11-01 10:38:28 -03:00
Torsten Grote
beedafd042
Move AppCheckFragment into check package
2024-11-01 10:38:28 -03:00
Torsten Grote
06191a1fc3
Catch error when loading snapshots for app checking
2024-11-01 10:38:28 -03:00
Torsten Grote
83974b4121
Show app backup check error screen
...
and error notification
2024-11-01 10:38:27 -03:00
Torsten Grote
26063a8ef0
Show app backup check success screen
2024-11-01 10:38:27 -03:00
Torsten Grote
96f9a8d017
Show app backup check success notification
2024-11-01 10:38:27 -03:00
Torsten Grote
51a6355205
Do parallel checking and update notification with progress
2024-11-01 10:38:26 -03:00
Torsten Grote
591dfe0bd6
Implement actual checking
2024-11-01 10:38:26 -03:00
Torsten Grote
85ce587b14
Create AppCheckerWorker and wire it up
2024-11-01 10:38:25 -03:00
Torsten Grote
060bb425da
UI for checking app backups
2024-11-01 10:38:25 -03:00
Torsten Grote
f67c1d5544
Replace deprecated sharedViewModel by activityViewModel
2024-11-01 10:38:24 -03:00
Torsten Grote
13e3dadeb4
Show 'Launch' button for force stopped apps
...
in backup status screen.
2024-10-30 12:15:53 -03:00
Torsten Grote
0fa14025b3
Merge pull request #748 from seedvault-app/feature/cirrus-ci-tests
...
Run tests in Cirrus CI again
2024-10-18 10:34:18 -03:00
Torsten Grote
d96bc52192
Merge pull request #691 from grote/690-webdav-info
...
Show full URL in settings when WebDAV is used
2024-10-17 15:54:45 -03:00
Torsten Grote
0ed6d5c2c0
Don't show toolbar for recovery code when restoring
...
This restores original behavior and should make CI pass which otherwise can't see the last two words.
2024-10-17 15:19:33 -03:00
Torsten Grote
a538a64395
Use DigestInputStream to spy on backup data
...
this is to save memory to prevent OOM errors we saw on CI
2024-10-17 13:51:31 -03:00
Torsten Grote
1d17adedff
log stopped packages in CI test
2024-10-17 13:51:31 -03:00
Torsten Grote
b8c87a6928
Always log BackupMonitor and start stopped apps later in CI test
2024-10-17 13:51:31 -03:00
Torsten Grote
32d7f49d4c
show error notification when AppBackupWorker isn't successful
...
otherwise there's no UI feedback when running backup manually
2024-10-17 13:51:31 -03:00
Torsten Grote
2957678465
Fix potential thread-safety issue when changing backends
2024-10-17 13:51:30 -03:00
Torsten Grote
3d9eca0d40
adapt CI to new UI for restore set items
2024-10-17 13:51:30 -03:00
Torsten Grote
eb9dad798c
onBackupSuccess now doesn't need a boolean anymore
2024-10-17 13:51:30 -03:00
Torsten Grote
910c68aa52
Launch stopped apps before test to ensure they get backed up
2024-10-17 13:51:29 -03:00
Torsten Grote
f38bed9616
Run instrumentation tests from other gradle modules
...
and those not annotated with @MediumTest
2024-10-17 13:51:29 -03:00
Steve Soltys
315e0736f5
Fix KVRestore spies to use new functions
2024-10-17 13:51:29 -03:00
Steve Soltys
42d7747641
Add logging for unknown exceptions
2024-10-17 13:51:29 -03:00
Steve Soltys
4aeb05813d
Run tests in Cirrus CI again
2024-10-17 13:51:26 -03:00
Torsten Grote
3fd615477d
Merge pull request #776 from theimpulson/menu
...
Switch to toolbar APIs for working with menu
2024-10-17 13:41:18 -03:00
Aayush Gupta
2b5ca5ebdc
{app|storage}: Drop theme attribute from toolbar
...
Signed-off-by: Aayush Gupta <aayushgupta219@gmail.com>
2024-10-16 20:31:47 +05:30
Aayush Gupta
82267f6844
app: Switch to toolbar APIs for working with menu
...
Signed-off-by: Aayush Gupta <aayushgupta219@gmail.com>
2024-10-16 20:31:46 +05:30
Torsten Grote
321c04958c
Exclude ourselves from backup status
2024-10-16 08:54:41 -03:00
Torsten Grote
f52b1004fb
Show full URL in settings when WebDAV is used
2024-10-15 17:47:40 -03:00
Torsten Grote
f5c2f0bd3a
Release version 15-5.0
2024-10-16 00:47:54 +05:30
Torsten Grote
45e7d23bbe
Merge pull request #777 from grote/readme-update
...
Update README and add funding to About screen
2024-10-14 15:22:26 -03:00
Torsten Grote
001c5f1a17
Update About with NGI0 Entrust Fund
2024-10-14 10:09:36 -03:00
Aayush Gupta
f21e0f8d39
UsbIntentReceiver: Specify parcel's type in method as well
...
The current method has been deprecated
Signed-off-by: Aayush Gupta <aayushgupta219@gmail.com>
2024-10-13 12:34:37 +05:30
Torsten Grote
2d47aa3d9f
don't crash in BackupMonitor when there is no packageName
...
this can happens when it tells us that restore has finished overall
2024-10-10 13:42:24 -03:00
Torsten Grote
16c00be124
remove corrupted snapshots when pruning
...
before a corrupted snapshot would DoS pruning
2024-10-10 13:42:24 -03:00
Torsten Grote
9339f9f0fb
when cached snapshot is corrupted fall back to loading from backend
2024-10-10 13:42:24 -03:00
Torsten Grote
14775b5c3e
Check that exceptions from file loading get caught
...
a sha256sum mismatch for example can happen, so the exception should get caught e.g. in RestoreCoordinatorState and should not necessarily be fatal
2024-10-10 13:42:23 -03:00
Torsten Grote
9422d0d309
Encode icons in PNG, because JPEG doesn't support transparency
...
This caused black squares around icons.
2024-10-10 13:42:23 -03:00
Torsten Grote
682afa1c69
Try to recover data for force stopped apps from latest snapshot
...
The system doesn't allow us to backup forced stopped apps, but if we had data for them once, we can at least carry it along.
2024-10-10 13:42:23 -03:00
Torsten Grote
c09ea7c075
Use BackupManagerMonitor to handle K/V with no data changed
...
The fake package manager package is essential for the backup, but when its data doesn't change and we request a normal incremental backup, it doesn't get included, because our transport doesn't even get called for it. Only the BackupMonitor gets a hint that it had no (new?) data via LOG_EVENT_ID_NO_DATA_TO_SEND.
This behavior started with Android 15 that fixed a bug that caused @pm@ to always backup. However, other K/V apps were probably affected before.
2024-10-10 13:42:23 -03:00
Torsten Grote
f8451586df
Minor improvements for app restore
...
* activity now can be launched from notification
* better logging
* app data restore continues even after activity died
2024-10-10 13:42:23 -03:00
Torsten Grote
11270ff694
Reset latest snapshot to avoid it getting stale
...
When switching to new storage that doesn't yet have any snapshots, we would otherwise keep the old latest snapshot around.
2024-10-10 13:42:22 -03:00
Torsten Grote
7696b88a5a
Improve RestoreSet display
...
when user is asked to choose a backup to restore
2024-10-10 13:42:22 -03:00