Tested on Android 7.1.2, 8.1.0, 10, 11, and 13:
- Install app
- Update databases
- Write test files
- Enable system scan
- Run a scan
- Check signature count
- Enable realtime scanner
- Write test files
- Ignore a detection
- Look up a detection
- Delete a detection
- Copy file over MTP and confirm detection
Signed-off-by: Tad <tad@spotco.us>
- Fixup SHA1 hash calculation
- Show full notification text when expanded
- Make basic self test more robust
- Add a self test option that actually writes files
- Bump version to 3.0, since all previous versions are basically completely broken garbage
Signed-off-by: Tad <tad@spotco.us>
- Store the new database separately and move into place
- Check for network connection before trying to download
- Don't immediately delete the database on download start
- Only delete new database on download failure
- Wait until all downloads complete before attempting reload
Signed-off-by: Tad <tad@spotco.us>
With all databases enabled the ThreadPool queue is exceed (25>16).
This normally isn't an issue for other users of the pool as it will get pushed onto the main thread.
But Android prohibits network activity on the main thread, which the downloader runs from.
Increase it 32 which should be suitable for now.
Maybe consider adding a separate pool in future.
Fixes https://github.com/Divested-Mobile/Hypatia/issues/34
Fixes https://gitlab.com/divested-mobile/hypatia/-/issues/31
Signed-off-by: Tad <tad@spotco.us>
- Trim hashes to 8 characters instead of 12. Saves ~10MB by default.
- Optimized databases. Saves ~8MB by default.
- Deduplicated strings. Saves ~12MB by default.
idle usage on arm64
- With defaults: ~165MB, previously ~195MB
- With all databases: ~350MB, previously ~650MB
Signed-off-by: Tad <tad@spotco.us>
- Don't try to load the database multiple times at once
- Add the signature count to the notification
- Format numbers for the locale
- Improve check for when no databases are available
- Fix an exception with the notification counter
- Ensure the database is really loaded before a scan
- Inform the user when a scan is cancelled
- Allow quicker cancelling of scan (when in the middle of hashing)
- Don't block main thread when updating databases
- Change the fab color depending on the scan state
- Add a simple textual progress bar to scans
- Make text output selectable
- Add a test signature
- Small sanity checks
Partially fixes https://github.com/Divested-Mobile/hypatia/issues/1#issuecomment-707734221
Closes https://gitlab.com/divested-mobile/hypatia/-/issues/3