Skip to content

Parse Android browser history databases - #877

Open
besendorf wants to merge 1 commit into
mainfrom
feature/android-browser-history
Open

Parse Android browser history databases#877
besendorf wants to merge 1 commit into
mainfrom
feature/android-browser-history

Conversation

@besendorf

Copy link
Copy Markdown
Collaborator

Summary

Closes #876 and implements the parser half of mvt-project/androidqf#122.

  • parses every database listed by an AndroidQF browser_history/manifest.json, from either a directory or ZIP acquisition
  • stages the database with adjacent WAL/SHM files and opens it read-only, preserving WAL-only visits without modifying source evidence
  • retains browser, package, profile, and original database path on every result
  • feeds visits into JSON results, the timeline, URL output, and URL-indicator checks
  • isolates malformed or missing databases so other browser databases are still processed
  • adds mvt-android check-fs support for a full filesystem dump or an explicitly supplied Chromium History file

Built-in filesystem locations are limited to Chrome, Brave, Microsoft Edge, and Samsung Internet. The path basis is the historical MVT Chrome path and ALEAPP sample-backed app_chrome/Default/History and app_sbrowser/Default/History coverage. An explicitly supplied database is labeled generic Chromium unless its complete path matches one of those validated locations. This also provides the first narrow implementation step toward #838.

Ruff passes, MyPy reports no issues across 148 source files, and the full test suite passes with one pre-existing skip. New coverage includes AndroidQF directory and ZIP inputs, all four built-in filesystem locations, a WAL-only visit, malformed-database isolation, and unsafe manifest paths.

@github-actions

github-actions Bot commented Aug 17, 2026

Copy link
Copy Markdown
Contributor

Coverage

Tests Skipped Failures Errors Time
242 1 💤 0 ❌ 0 🔥 11.762s ⏱️

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

None yet

Projects

None yet

Development

Successfully merging this pull request may close these issues.

Reintroduce Android browser history extraction

1 participant