Commit graph

57 commits

Author SHA1 Message Date
Torsten Grote
6ea33632cd
Upgrade more dependencies for Android 13
Now is a good time as we need to thoroughly test everything again anyway.
2022-08-23 11:44:18 -03:00
Torsten Grote
82f23b7800
Set minSdk to 32 and remove code for old SDKs
We can't go to 33 yet, because roboelectric doesn't support that
2022-08-23 11:44:18 -03:00
Aayush Gupta
584a54b127 gradle: Upgrade robolectric and add explicit dependency on hamcrest
Current hamcrest dependency was coming from robolectric but upgrading it
removed it.

Signed-off-by: Aayush Gupta <aayushgupta219@gmail.com>
2022-08-23 18:30:43 +05:30
Aayush Gupta
4b8427821b gradle: Enable java 11 language features
Also unify the style while at it

Signed-off-by: Aayush Gupta <aayushgupta219@gmail.com>
2022-08-23 14:43:34 +05:30
Aayush Gupta
c48aa73ad0 gradle: Bump kotlin and dependencies version for Android 13
Signed-off-by: Aayush Gupta <aayushgupta219@gmail.com>
2022-08-23 14:43:33 +05:30
Torsten Grote
97398f1c5c Build build storage backup lib within AOSP
This removes the AAR binary from the repo as it isn't needed anymore. Also room schema migrations will need to be one manually in the future as schema export doesn't seem to work in AOSP.
2021-10-13 16:25:41 +05:30
Torsten Grote
7f4b565d2a First version bumps for Android 12 2021-10-13 16:25:41 +05:30
Torsten Grote
3ffb79b04f Write metadata with new version 1
Reading still supports version 0
2021-10-13 16:15:20 +05:30
Torsten Grote
d6a95e40ec Compares kotlin-bip39 library with bitcoinj library
to ensure that kotlin-bip39 is not malicious and can be upgraded safely
2021-09-24 00:02:43 +05:30
Torsten Grote
05640ebb63 Replace novacrypt BIP39 library with the zcash one
which is MIT licensed instead of GPLv3

Change-Id: I30041de5ab1c1f8c7d5f57d6c60e28300a285259
2021-07-05 23:50:18 +05:30
Torsten Grote
b8ac11e724 apply ktlint to storage.lib as well 2021-07-05 20:08:29 +05:30
Torsten Grote
6c633b70c3 Add storage library (and demo app)
and use for periodic files backup
2021-07-05 20:08:29 +05:30
Chirayu Desai
b08b1f55f7 Change signing configuration to use AOSP platform key
* https://stackoverflow.com/a/40145242

Change-Id: I12d09f299f4f0f7d8879a631d4f3298a18409683
2021-03-05 02:37:27 +05:30
Steve Soltys
9daaeea55d Move CI to GitHub Actions 2020-11-10 16:34:40 -05:00
Torsten Grote
7694eb3cf9 Move to different versioning scheme and show version in About dialog 2020-10-29 20:50:53 +05:30
Torsten Grote
6c531066e7 Enable automatic coding style linting with ktlint (also on CI)
This way the coding style is guaranteed to stay consistent.
2020-10-07 19:44:05 +05:30
Torsten Grote
d2ed3a10f0 Fix dependency issues by strictly requiring specific versions
Otherwise gradle pulls in newer versions of some libraries that require
a newer Kotlin version at runtime and then make the app crash.

This also moves the dependency declarations into a dedicated file.
2020-10-07 19:01:39 +05:30
Torsten Grote
57f404281c Fix lint warnings 2020-10-07 19:01:39 +05:30
Torsten Grote
ceac5fc5ce Clean up koin-android dependencies and upgrade koin 2020-10-07 19:01:39 +05:30
Torsten Grote
cfcf7b35ba Clean up BIP39 dependencies 2020-10-07 19:01:39 +05:30
Torsten Grote
6cde6be997 Sync AndroidX dependencies with those available in AOSP 2020-10-07 19:01:39 +05:30
Torsten Grote
8f91138e9f Remove dependency on commons-io library 2020-10-07 19:01:39 +05:30
Torsten Grote
45ac8883a0 Fix roboelectric unit tests 2020-10-07 19:01:39 +05:30
Torsten Grote
415b5729d5 Bump AOSP versions for gradle build 2020-10-07 19:01:39 +05:30
Torsten Grote
ca309df03d Upgrade AOSP libraries for gradle build 2020-10-07 19:01:39 +05:30
Torsten Grote
b594d30e2c Fix auto-service warning in instrumentation tests 2020-09-17 06:06:14 +05:30
Michael Bestas
239b83196f Make seedvault compile in AOSP properly
* Add Android.bp to compile using AOSP build system instead of gradle
* Add prebuilt external libs that are not available on AOSP

Fixes #97

Co-authored-by: Chirayu Desai <chirayudesai1@gmail.com>
2020-09-11 19:04:38 +05:30
Michael Bestas
eb15fa93ed Upgrade androidx-lifecycle-livedata to 2.3.0-alpha05
* All previous aar versions have their modified date set to 0 which trigger
  the following openjdk bug:
  https://bugs.openjdk.java.net/browse/JDK-8184940
  This fixes the following compilation error while building in AOSP environment:

    java.time.DateTimeException: Invalid value for MonthOfYear (valid values 1 - 12): 0
2020-09-11 19:04:38 +05:30
Michael Bestas
4283630e26 Drop dependency on kotlin-android-extensions
* Not available on AOSP.
2020-09-11 19:04:38 +05:30
Torsten Grote
7bda3eb12b Improve DocumentsProvider tests against Nextcloud 2020-09-11 19:04:38 +05:30
Torsten Grote
f7df78d2f3 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-09-11 19:04:38 +05:30
Torsten Grote
f68095a463 Upgrade gradle 2020-09-11 19:04:38 +05:30
Torsten Grote
fcf17fe23a
Show list of apps and their backup status 2020-01-18 16:38:55 -03:00
Torsten Grote
7605762631
Re-install backed-up APKs before restoring from backup 2020-01-14 07:45:37 -03:00
Torsten Grote
b9cac5ea87
Introduce MetadataManager to handle all metadata related to backups
This now updates the metadata on remote storage and internal cache
after each successful package backup.
2020-01-14 07:45:36 -03:00
Torsten Grote
94c7663daf
Use dependency injection with Koin 2019-12-17 09:56:45 -03:00
Torsten Grote
e659892278
Fix CI by running tests with newer Java version, but target JDK 8 2019-09-19 12:52:31 -03:00
Torsten Grote
37ffacbafe
Upgrade to Android 10 (Q)
If somebody wants the backup app to work on a lower Android version,
they need to maintain a branch for that which uses and targets the old API.
2019-09-19 09:17:42 -03:00
Torsten Grote
af43c6154d
Get rid of device folders, use unix epoch as backup token and store it 2019-09-11 15:26:10 -03:00
Torsten Grote
74aa62a264
Add instrumentation test for testing AES/GCM nonces are really unique 2019-09-02 09:47:53 -03:00
Torsten Grote
e955e021fd
Add a simple instrumentation test for testing on real devices 2019-09-02 09:47:52 -03:00
Torsten Grote
2ce625ac87
Huge refactoring of backup transport
* to get rid of global state
* to have a testable architecture
* to allow for authenticated encryption
* to have a backup format version
* to potentially allow for other storage plugins
2019-09-02 09:47:49 -03:00
Torsten Grote
66c0919eb5
Let user write down recovery code on first start 2019-07-08 13:21:32 +02:00
Torsten Grote
3d5911d41d
Add a SettingsViewModel in Kotlin including the Kotlin deps 2019-07-03 19:44:37 +02:00
Torsten Grote
3981d3d8cc
Use latest stable AndroidX libraries 2019-07-03 12:46:54 +02:00
Torsten Grote
7fd3810fbf
Add AndroidX dependencies 2019-06-17 10:34:49 -03:00
Torsten Grote
3a9aec56b2
Upgrade android.jar to API 28 2019-06-14 07:04:19 -03:00
Torsten Grote
b17a55ac57
Target API 28 2019-06-11 11:57:10 -03:00
Torsten Grote
d1f5986e39
Add signing config for faster testing 2019-06-04 09:04:25 -03:00
Torsten Grote
2434fe30f4
Several small nitpicks and fixes 2019-06-04 09:04:25 -03:00