Skip to content

Drive: Menü mit Ordnerbaum, Tresore nur im Menü, Tresor-Sperre, Drive-Einstellungen - #146

Merged
CallMeTechie merged 3 commits into
mainfrom
feat/drive-menu-vault-lock
Oct 28, 2026
Merged

CallMeTechie merged 3 commits into
mainfrom
feat/drive-menu-vault-lock

Conversation

@CallMeTechie

Copy link
Copy Markdown
Owner

Drive 1.11 in der Android-App (Vertrag „Drive-Menü“, Abschnitte 1–5, rückwärtskompatibel).

Menü

  • Kopf: „Drive“, Name der Person und ihr Platz (Familien-/Business-Platz)
  • „Persönlich“ (Meine Dateien) und „Gemeinsam“ (Familie, Kinder, Team-Ordner), jeweils mit aufklappbarem Ordnerbaum: Pfeil = auf/zu (lädt erst beim Aufklappen, keine Tiefengrenze), Name = Ordner im Dateien-Tab öffnen (Menü schließt, offener Ordner hervorgehoben, Zurück geht eine Ebene hoch). Aufgeklappte Knoten bleiben auf dem Gerät gemerkt.
  • Mit vaultsApart lädt der Baum children?dirs=1 (mit hasDirs), sonst die normale Liste, gefiltert auf Ordner ohne Tresore (Pfeil dann bis zum Laden).
  • „Tresore“: nur noch hier, Schloss-Icon, „Privat · gesperrt“ / „Mit Familie geteilt · gesperrt“ / „Team … · gesperrt“; kein „Neuer Tresor“ mehr im Menü. Der Name eines gesperrten Tresors kommt aus einem verschlüsselten Namensspeicher auf dem Gerät.
  • Unten eine Icon-Leiste (je 44 dp, contentDescription, Langdruck zeigt den Namen): Papierkorb, Speicher, Ordner sichern, Fristen, Importieren (nur mit Feature), Einstellungen.
  • Der KI-Schalter ist in die Drive-Einstellungen umgezogen.

Tresore nicht mehr in den Dateien

  • DriveApi.folder lässt Tresor-Ordner außerhalb von Tresoren weg (und passt total an); Suche, Fotos, Alben und Erinnerungen ebenso. Damit auch Verschieben-/Speichern-/Ordner-Picker, Teilen-Ziel und Ordnerwahl.

Neuer Tresor

  • Nur im Plus-Menü (nach einer Trennlinie, „Erscheint im Menü unter „Tresore“, nicht hier“).
  • Dialog: Name + „Wer darf ihn öffnen?“ – „Nur ich“, „Mit der Familie teilen“ (nur mit Familien-Platz), bei Business jeder Team-Ordner mit Schreibrecht. parentId ist immer der Wurzelordner des gewählten Bereichs. Danach wie bisher der Wiederherstellungsschlüssel.

Tresor-Sperre

  • Öffnen nur nach Gerätebestätigung (BiometricPrompt, BIOMETRIC_STRONG | DEVICE_CREDENTIAL; die Abfrage kommt beim Öffnen sofort).
  • Sperre nach Inaktivität (Standard 3 min, Auswahl 1/3/5/15) und beim Wechsel in den Hintergrund (ProcessLifecycleOwner, abschaltbar). Laufende Up-/Downloads des Tresors lassen die Sperre warten; Dateiauswahl und das Öffnen einer entschlüsselten Datei in einer anderen App sperren nicht sofort (die Inaktivitäts-Sperre gilt weiter).
  • Sperren: Tresor-Schlüssel überschreiben und vergessen, entschlüsselte Namen vergessen, entschlüsselte Kopien löschen; die offene Tresor-Ansicht zeigt nur noch „Tresor gesperrt“ mit „Entsperren“. Dazu ein Schloss-Knopf „Tresor sperren“.
  • Der Keystore-Schlüssel des Geräteschlüssels verlangt jetzt Nutzer-Authentifizierung (setUserAuthenticationParameters(60, AUTH_BIOMETRIC_STRONG or AUTH_DEVICE_CREDENTIAL)). Neues Dateiformat v2 mit öffentlichem Schlüssel im Klartext (Geräte-ID und Sicherheitszahl ohne Bestätigung). Bestehende v1-Schlüssel werden nach der ersten Bestätigung umverpackt (alter Schlüssel entschlüsselt → mit dem neuen verpackt → zurückgelesen → alter Keystore-Schlüssel gelöscht), das Schlüsselpaar bleibt, keine neue Freigabe nötig.
  • Ohne Displaysperre: klarer Hinweis mit Knopf zu den Sicherheitseinstellungen, Tresore öffnen nicht.

Drive-Einstellungen

  • Eigener Bildschirm (Zahnrad im Menü); der Eintrag „Drive“ der App-Einstellungen führt nur noch dorthin.
  • Sicherung (Foto-Sicherung, Ordner sichern), Tresore (mit Fingerabdruck öffnen inkl. Warnhinweis beim Ausschalten, automatisch sperren, beim Verlassen sperren, Sicherheitszahl, „Freigegeben für“), KI für Dokumente pro Bereich (nur mit Schreibrecht, Hinweis „Tresore werden nie von der KI gelesen“), Ansicht (Sortierung, Liste/Kacheln, Fotos-Tab startet mit „Nur Kamera-Uploads“), Daten auf diesem Gerät (Zwischenspeicher mit Größe und „Leeren“ – nur Vorschaubilder und geöffnete Dateien; „Hochladen nur im WLAN“ für alle Uploads inkl. Tresor und Sicherungen, die eigenen WLAN-Schalter der Sicherungen gelten zusätzlich), Benachrichtigungen (Fristen, Tresor-Anfragen – lokal gefiltert, die Mitteilungen bleiben im Posteingang).

Tests

Neue Unit-Tests: DriveTreeTest (Flattening, Laden, Schleifen, Merken, Filter, Bereiche für neue Tresore, JSON hasDirs), DriveSettingsLogicTest (Sperr-Timer, Einstellungen, WLAN-Regel, Push-Filter), DriveVaultDeviceKeyTest (Migration v1 → Nutzer-Auth ohne neue Freigabe, Ausschalten, Keystore-Fehler löscht nichts), DriveVaultNamesTest.

Version nicht angehoben.


Generated by Claude Code

Claude added 3 commits October 28, 2026 22:17
…-Einstellungen

- Menü: Kopf mit Name und Platz, „Persönlich“/„Gemeinsam“ mit aufklappbarem, lazy
  geladenem Ordnerbaum (gemerkte Aufklapp-Zustände), „Tresore“, Icon-Leiste unten
  (Papierkorb, Speicher, Ordner sichern, Fristen, Importieren, Einstellungen)
- Tresor-Ordner nicht mehr in Listen, Suche, Fotos und Ordnerwahl (Drive 1.11
  `vaultsApart`, sonst filtert die App selbst)
- Neuer Tresor nur im Plus-Menü mit „Wer darf ihn öffnen?“, immer im Wurzelordner
  des gewählten Bereichs
- Tresor-Sperre: Gerätebestätigung vor dem Öffnen, Sperre nach Inaktivität und im
  Hintergrund, Keystore-Schlüssel mit Nutzer-Authentifizierung (Migration ohne neue
  Freigabe), Hinweis ohne Displaysperre
- Drive-Einstellungen als eigener Bildschirm (KI pro Bereich, Ansicht,
  Zwischenspeicher, Hochladen nur im WLAN, Benachrichtigungen)

Co-Authored-By: Claude Opus 5.5 <noreply@anthropic.com>
Claude-Session: https://claude.ai/code/session_016xX1efcZF1f6G9rhmaJNLD
…ufgeräumt

Co-Authored-By: Claude Opus 5.5 <noreply@anthropic.com>
Claude-Session: https://claude.ai/code/session_016xX1efcZF1f6G9rhmaJNLD
@CallMeTechie
CallMeTechie merged commit f597bbb into main Oct 28, 2026
9 of 10 checks passed
CallMeTechie pushed a commit that referenced this pull request Oct 28, 2026
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.

2 participants