Commit graph

132 commits

Author SHA1 Message Date
Alexander Bakker
e653e42455 Update dependencies 2021-02-14 16:03:30 +01:00
Alexander Bakker
441a943a9d Update dependencies 2021-02-08 18:46:56 +01:00
Alexander Bakker
eae31ef94b Switch from Appcompat to Material Components theme
Close #354.
2021-01-23 15:23:02 +01:00
Alexander Bakker
a6bf3b7c87 Add bottomsheet for chips 2021-01-21 10:53:37 +01:00
Alexander Bakker
c6cb390990 Fix the UI tests 2021-01-16 17:43:07 +01:00
Alexander Bakker
260a3b9c78
Merge pull request #651 from alexbakker/replace-fab
Replace the FAB with a bottom sheet dialog
2021-01-16 15:39:31 +01:00
Alexander Bakker
a5ec7666ec
Merge pull request #647 from alexbakker/more-tests
Add some more tests
2021-01-16 15:39:02 +01:00
Alexander Bakker
2c0068bea7 Release v1.4.2 2021-01-16 15:27:00 +01:00
Alexander Bakker
98d39ee399 Downgrade zip4j to 2.6.0
It looks like we broke the Authenticator Plus importer in
d660fbc6d1 by upgrading zip4j. So this patch
downgrades it again. I couldn't immediately find this issue in their issue
tracker, so it may be worth spending some time reporting this to them later.
2021-01-12 21:27:24 +01:00
Alexander Bakker
e324f649ee Replace the FAB with a bottom sheet dialog
This also removes the dependency on ``com.getbase:floatingactionbutton``.
2021-01-10 14:49:24 +01:00
Alexander Bakker
4f8a0b9020 Add some more tests
This adds tests for all of the importers, a new scrypt test and some more OTP tests. More to come.
2021-01-10 14:47:27 +01:00
Alexander Bakker
1bd9cf3a3f Release v1.4.1 2021-01-04 18:59:47 +01:00
Alexander Bakker
15e28abecd Update dependencies
This also disables the Jetifier, because we don't need it anymore.
2020-12-26 16:49:30 +01:00
Alexander Bakker
1748e2221f Release v1.4 2020-12-26 15:58:18 +01:00
Alexander Bakker
735c086726 Release v1.4-beta2 2020-12-04 22:10:04 +01:00
Alexander Bakker
0b6da5a93c Prevent file provider name collision (for debug builds) 2020-12-04 22:03:58 +01:00
Alexander Bakker
d24e1471a7 Release v1.4-beta1 2020-12-04 20:49:51 +01:00
Alexander Bakker
5f2529ea33 Improve the export functionality in numerous ways
This patch improves the export functionality in the following ways:
1. Allow setting a password even if the Aegis vault is not encrypted
2. Display a scary warning when exporting an unencrypted vault
3. Support exporting to a Google Authenticator URI file
4. Option to use Android's share mechanism

<img src="https://alexbakker.me/u/375oh146vz.png" width="300" />
2020-10-30 23:03:10 +01:00
Michael Schättgen
e14a61dbf6 Add panic trigger which deletes vault
Add guardianproject fdroid signing key and minor review improvements

Add minor review fixes

Add panic trigger which deletes vault

Add guardianproject fdroid signing key and minor review improvements
2020-10-30 11:46:28 +01:00
Alexander Bakker
cac13b082e Bump target SDK to 30 and update dependencies 2020-10-22 15:11:45 +02:00
Alexander Bakker
d875cb6baa Improve auto lock and make it more customizable
This patch makes the auto lock option more customizable. Users can now choose a
combination of the following: Locking Aegis when
- The back button is pressed
- The app is minimized
- The device is locked

<img src="https://alexbakker.me/u/rlj4y2u8pk.png" width="300">
2020-08-26 14:20:09 +02:00
Alexander Bakker
d660fbc6d1 Update Gradle and dependencies 2020-08-12 12:54:13 +02:00
Alexander Bakker
35b5ce9d17 Release v1.3 2020-08-10 19:10:44 +02:00
Alexander Bakker
9e4313e138 Release v1.3-beta2 2020-08-02 12:29:01 +02:00
Alexander Bakker
7518408554 Release v1.3-beta1 2020-08-01 18:30:13 +02:00
Alexander Bakker
0e78fd9652 Replace AppIntro with a new custom intro
This removes the dependency on AppIntro and replaces it with our own custom
intro implementation, backed by ViewPager2. We're doing this because we want a
more reliable and customizable onboarding for Aegis.

I've kept the design mostly the same as it was before, but tried to achieve a
bit of a cleaner look:

<img src="https://alexbakker.me/u/vsr3ahpjt6.png" width="200"> <img
src="https://alexbakker.me/u/efqid2ixly.png" width="200"> <img
src="https://alexbakker.me/u/oehmjm0rn9.png" width="200">
2020-08-01 14:09:58 +02:00
Sage Pointer
a25dbc5cdd Add desugaring for Android < 7 compatibility 2020-07-12 18:09:50 +02:00
Alexander Bakker
0eb9a25687 Add changelog of 1.2.1 and bump versionCode 2020-07-10 21:28:56 +02:00
Michael Schättgen
0eb338a0bf
Merge pull request #464 from alexbakker/ui-tests
Add initial set of UI tests
2020-07-04 11:54:34 +02:00
Michael Schättgen
c252e77c5b
Merge pull request #461 from alexbakker/better-scanner
Replace barcodescanner with CameraX and ZXing
2020-07-04 11:34:59 +02:00
Alexander Bakker
c65ed16790 Replace barcodescanner with CameraX and ZXing
This removes the dependency on ``me.dm7.barcodescanner:zxing`` and replaces it
with our own QR code scanner implementation using CameraX and ZXing. The main
reason for this change is to hopefully get better compatibility with obscure
devices. The barcodescanner library we were previously using seems unmaintained,
while Google is apparently putting a lot of effort into CameraX.

ScannerActivity has been almost entirely rewritten, but the functionality is
exactly the same as before.
2020-06-23 21:54:23 +02:00
orangenbaumblatt
cc33c63501 Add password strength meter
String refactor


Layout improvements


Layout improvements


Fixes after rebuild
2020-06-16 22:50:17 +02:00
Alexander Bakker
6e54497492 Release v1.2 2020-06-16 17:31:04 +02:00
Alexander Bakker
39ecfba3e4 Add initial set of UI tests
This patch adds an initial set of UI tests for Aegis built using Espresso. It
covers a fair bit of the essential functionality of the app, but there are lots
more tests we could add later on.

This also reconfigures our Travis CI build manifest to run the tests on API 21,
23, 27 and 28 emulators. It was a real pain to get this to work well, but let's
hope it's stable now.

I had to downgrade ``com.google.android.material`` to 1.0.0, because 1.1.0
introduced an issue where the test would hang.
2020-06-10 16:15:52 +02:00
Alexander Bakker
ae5502b650 Release v1.2-beta5 2020-06-10 14:59:22 +02:00
Michael Schättgen
4e00191039 Add ability to transfer tokens with qr codes
Add minor improvements

Add label to activity
2020-06-06 12:23:28 +02:00
Michael Schättgen
c6a9716d16
Merge pull request #431 from alexbakker/update-deps-again
Update dependencies and sort them alphabetically
2020-06-06 11:54:12 +02:00
Alexander Bakker
bed8c9172d Release v1.2-beta4 2020-05-30 13:52:20 +02:00
Alexander Bakker
66dd3561cf Release v1.2-beta3 2020-05-25 17:32:32 +02:00
Alexander Bakker
91d89670d2 Update dependencies and sort them alphabetically 2020-05-24 12:52:02 +02:00
Alexander Bakker
6a2992530e Release v1.2-beta2 2020-05-16 21:36:52 +02:00
Alexander Bakker
91f9a6756a Release v1.2-beta1 2020-05-16 13:53:30 +02:00
Alexander Bakker
3c887d8392 Replace SpongyCastle with BouncyCastle
SpongyCastle is a fork of BouncyCastle. We originally used this fork to 1) have
access to scrypt and 2) prevent a package name collision with the bundled
BouncyCastle. We don't actually need to use the fork anymore, because the
package name of the bundled BouncyCastle was changed in Android. SpongyCastle
has also gotten quite outdated in recent years.

The built-in version of BouncyCastle is replaced with the one bundled with the
app at runtime, so that we have a recent version even on older Android versions.

This also updates Gradle and the Gradle Android plugin, to fix a build error I
was running into when I added the dependency to BouncyCastle.
2020-05-16 12:30:38 +02:00
Alexander Bakker
1824d38f75 Import from ZIP for the Authenticator Plus, instead of SQLite databases 2020-05-12 12:09:46 +02:00
Alexander Bakker
56bde0e19b Add support for importing from the new Google Authenticator export QR codes 2020-05-11 14:02:59 +02:00
Michael Schättgen
393b815409
Merge pull request #394 from alexbakker/update-appintro
Update AppIntro to 6.0.0
2020-05-09 14:42:23 +02:00
Alexander Bakker
bc5fa68de8 Update AppIntro to 6.0.0 2020-05-05 19:14:10 +02:00
Alexander Bakker
77718809ef Minify and optimize the APK using ProGuard
This enables some minification and optimization options to shrink the size of
our APK. A release APK would previously be 12 MB in size, but would now be 8.2
MB.

To test, check if *all* of the functionality of the app still works,
particularly parts that refer to dependencies. You'll know if ProGuard broke
something when the app crashes with a ``ClassNotFoundException`` or similar
exception. I think I've covered all of the cases where ProGuard removed too much
in the rule file.

Also, I was curious why our APK had gotten so large to begin with. I did some
digging and found that this is caused by the SQLCipher dependency. The APK
shrinks down to 2.7 MB without it! We should consider whether having support for
importing from Authenticator Plus is worth the extra 5.5 MB in size.
2020-05-02 15:28:38 +02:00
Alexander Bakker
4a69e9efb4 Add support for backups
Allow users to select a folder where automatic backups will be created. This
also bumps minSdkVersion to 21.
2020-04-18 13:38:25 +02:00
orangenbaumblatt
dc0f7c4668 Added Database Import from Authenticator Plus
Added copyright notice


Rearrange item position in import dialog


Refactor SqlImportHelper to support SQLCipher


Improved stream handling
2020-03-12 18:34:17 +01:00