Skip to content

Drive: Arbeitsfotos getrennt sichern (Drive 1.13) - #150

Merged
CallMeTechie merged 2 commits into
mainfrom
feat/drive-work-photos
Oct 29, 2026
Merged

CallMeTechie merged 2 commits into
mainfrom
feat/drive-work-photos

Conversation

@CallMeTechie

Copy link
Copy Markdown
Owner

Drive: Arbeitsfotos getrennt sichern (Drive 1.13)

Android-Teil von „Drive 1.13.0 – Arbeitsfotos getrennt sichern“ nach dem abgenommenen Mockup (Entwürfe 1–5) und der Server-API photoClasses (Branch feat/drive-1130-photo-classes). Optik im bestehenden App-Design (Gc-Komponenten, Theme-Farben: Blau = Arbeit, Grün = Privat, Gelb = Prüfen).

Einordnung bei der Foto-Sicherung

  • Ist ein Ordner „Arbeitsfotos nach“ gewählt, ordnet die Sicherung jedes neue Foto ein: aufgenommen im WLAN Firma → Arbeitsordner (<Arbeitsordner>/<JJJJ>/<MM> bei „Unterordner nach Jahr und Monat“), im WLAN Zuhause → Kamera-Uploads wie bisher. Sonst schätzt die KI auf dem Gerät: in der Lernphase (< 30 Beispiele, je Art mind. 3) oder unsicher → Kamera-Uploads mit Prüfen-Marker (Hinweis = KI-Wahrscheinlichkeit „Arbeit“); nach der Lernphase, sicher (≥ 0,85 / ≤ 0,15) und „Selbst einsortieren, wenn sicher“ an → direkt Arbeit bzw. privat.
  • Ist der Arbeitsordner weg oder nicht beschreibbar, geht das Foto privat mit Marker (keine abgebrochene Sicherung).
  • Ohne gewählten Arbeitsordner bleibt alles wie bisher.

WLAN-Zeitleiste (nur auf dem Gerät, noBackupFilesDir, 30 Tage)

  • Quelle ist der Netzwerk-Callback der „Vertrauenswürdigen WLANs“ (TrustedNetworkMonitor, FLAG_INCLUDE_LOCATION_INFO, vorhandene Standort-/Hintergrund-Standort-Berechtigung). Zusätzlich weckt Android die App bei jedem WLAN-Beitritt (registerNetworkCallback(request, PendingIntent), nicht exportierter Receiver, beim App-Start neu registriert), und die Sicherung schaut beim Eintreffen neuer Fotos (Content-Trigger, 30 s – 5 min) und bei jedem Lauf nach.
  • Zuordnung per Aufnahmezeit: zwischen zwei Blicken desselben Prozesses gilt das WLAN lückenlos; über eine Lücke (App lief nicht) nur, wenn beide Seiten dasselbe WLAN zeigen, sonst nur ein Blick ≤ 2 min am Foto. Was nicht sicher ist, fällt auf „Prüfen“.
  • Ohne Standortberechtigung: Hinweis wie im Mockup, alles außer der KI fällt auf „Prüfen“.

Fotos-Tab

  • Chips Alle | Privat | Arbeit | Prüfen (N) (gelber Zähler aus photos/classes), dahinter Alben und „Nur Kamera-Uploads“. Filter über class=.
  • Gelbes Fragezeichen an Kacheln zu prüfender Fotos (auch Dateien-Kacheln), kleine blaue Tasche an Arbeitsfotos in „Alle“.
  • Hinweisband „N Fotos zu prüfen – aufgenommen außerhalb von Firma und Zuhause“ (→ Prüfen) und, wenn „Aufräumen“ Vorschläge hat, „N Fotos sind wahrscheinlich Arbeitsfotos · Aufräumen“.
  • Auswahl-Leiste: sind alle ausgewählten Fotos zu prüfen → vorne große Knöpfe Arbeit (blau) und Privat (grün), darüber „KI: wahrscheinlich Arbeit · 72 % sicher“, klein Senden, Löschen, Mehr; Kopf „Zu prüfen – wohin gehört es?“. Sonst Senden, Zu Album, Verschieben, Löschen, Mehr.
  • Mehr: Auf dem Handy speichern, Kopieren, Link teilen, Abschnitt Zuordnung (Ist ein Arbeitsfoto · „Verschiebt nach „…“, die KI lernt mit“ / Ist privat / Zum Prüfen markieren, jeweils ausgegraut mit Grund wie „Schon privat“), Details.
  • Nach der Zuordnung Snackbar „N Fotos → Meine Dateien › Arbeit · Die KI lernt aus dieser Zuordnung · Rückgängig“ (zurückverschieben, Marker samt Hinweis wieder setzen, Beispiele vergessen).
  • Arbeit = Verschieben in den Arbeitsordner (Jahr/Monat, Sammel-Auftrag move, ohne bulk einzeln), Privat = aus dem Arbeitsordner nach Kamera-Uploads/Jahr/Monat bzw. dort lassen; Marker per photos/review { review:false }.

Lernen (nur auf dem Gerät)

  • Merkmale: ML Kit Image Labeling über Google Play-Dienste (play-services-mlkit-image-labeling, Modell wird wie OCR per com.google.mlkit.vision.DEPENDENCIES mit der App geladen, nicht im APK) auf einem kleinen Bild (Thumbnail des Handys bzw. Vorschau vom eigenen Server) + Aufnahmezeit (Werktag 7–19 Uhr, Wochenende). Modell: logistische Regression (beide Klassen gleich gewichtet). Kein Bild geht für die KI an einen Dienst.
  • Beispiele aus: Arbeit/Privat-Knöpfen und Mehr, Verschieben in den/aus dem Arbeitsordner (auch normale Mehrfachauswahl in Fotos und Ordnern), Fotos aus Firmen-/Zuhause-WLAN, Aufräumen (gewählt = Arbeit, abgewählt = privat). Eigene Schätzungen sind nie Beispiele.
  • Lernstand „23 von 30 Beispielen“, „Gelernt aus X Arbeitsfotos (davon Y aus dem Firmen-WLAN) und Z privaten Fotos“, „Neu lernen“ mit Rückfrage.

Aufräumen

  • KI-Vorschläge aus schon gesicherten privaten Fotos (Kamera-Uploads, neueste 240), Prozent je Kachel, ≥ 70 % vorausgewählt, Alle/Keine pro Monat, „N Fotos nach „Arbeit“ verschieben“ (Sammel-Auftrag). Aus den Einstellungen und dem Hinweisband im Fotos-Tab (ein kurzer Blick auf 60 Fotos alle 3 Tage, nur im WLAN).

Neues WLAN

  • Unbekanntes WLAN → Benachrichtigung „Neues WLAN „…“ – wohin sollen Fotos von hier?“ (mit Knöpfen Firma/Zuhause/Weder noch) und Dialog „Wo bist du gerade?“ über jedem Bildschirm (Firma / Zuhause / Weder noch, „Bei neuen WLANs nicht mehr fragen“, Später / Speichern). Abschaltbar „Bei neuen WLANs fragen“. Nur auf dem Gerät gespeichert.

Einstellungen (Foto-Sicherung)

  • Ziele: Private Fotos, Arbeitsfotos nach (beliebiger beschreibbarer Ordner, kein Tresor; Server-Fehler camera/encrypted/… als Text), Unterordner nach Jahr und Monat, Hinweis Team-Ordner.
  • WLANs: Liste mit Firma/Zuhause/Weder noch (antippen ändert/entfernt), „Aktuell: … · Zuordnen“, „Bei neuen WLANs fragen“, Hinweis zur Standortberechtigung (mit Erklär-Dialog vor jeder Anfrage).
  • KI für Arbeitsfotos: Lernstand, „Selbst einsortieren, wenn sicher“, „Läuft nur auf diesem Handy“, Aufräumen, Neu lernen.
  • Auf dem Handy: „Arbeitsfotos nach der Sicherung vom Handy entfernen“ (aus; Android verlangt eine Bestätigung → Band „N Arbeitsfotos … Entfernen“, in den Papierkorb des Handys), „Arbeitsfotos nie in Erinnerungen und Fotorahmen“ (an, workInMemories).

Server-Vertrag (Drive 1.13.0)

photoClasses in me; GET|PUT photos/settings (mit folder.path), POST photos/review (in Teilen à 500), GET photos|photos/months?class=, GET photos/classes; node.review { hint } und work.

Rückwärtskompatibel (ohne photoClasses)

  • Einordnung per WLAN/KI läuft trotzdem (Arbeitsordner lokal gespeichert), Prüfen-Marker nur auf diesem Gerät; Chips Privat/Arbeit ausgegraut „Braucht Drive 1.13“, „Prüfen“ filtert die lokalen Marker; „Nie in Erinnerungen“ ausgegraut.

Barrierefreiheit

  • Kacheln mit „…, zu prüfen“ / „…, Arbeit“, Prüfen-Chip „Prüfen, N Fotos“, Lernfortschritt als Fortschrittsbalken mit Bereich, Dialog-Auswahl als Radiogruppe, alle Knöpfe ≥ 44 dp (Chips mit 48-dp-Tippfläche).

Tests

  • DriveWorkLogicTest (Einordnung, Schwellen, Lernphase, WLAN-Zonen, Leisten-Auswahl, KI-Hinweis, Mehr-Angebot, Verschiebe-Plan, Aufräumen-Vorschläge), DriveWifiTimelineTest (Zeitleiste, Lücken, Kürzen, JSON), DriveWorkClassifierTest (Training, Merkmale, Beispiele, JSON), DriveJsonWorkTest (Antworten und Bodies von 1.13), DriveBackupLogicTest (Aufnahmezeit, Rückfall bei fehlendem Arbeitsordner).

Version nicht angehoben.


Generated by Claude Code

Claude added 2 commits October 29, 2026 14:00
- Foto-Sicherung ordnet neue Fotos ein: Firmen-WLAN → Arbeitsordner,
  Zuhause-WLAN → Kamera-Uploads, sonst KI auf dem Gerät; Lernphase oder
  unsicher → privat mit Prüfen-Marker
- WLAN-Zeitleiste (Netzwerk-Callback der vertrauenswürdigen WLANs, Wecker
  per PendingIntent, Proben bei neuen Fotos und jedem Lauf), nur auf dem Gerät
- Fotos-Tab: Alle | Privat | Arbeit | Prüfen (N), Prüfen-Marker und Tasche,
  Hinweisband, Arbeit/Privat vorne in der Leiste, Zuordnung im Mehr-Sheet,
  Snackbar mit Rückgängig
- Lernen auf dem Gerät (ML Kit Image Labeling über Play-Dienste +
  logistische Regression), Lernstand, Neu lernen, Aufräumen-Bildschirm
- Neues WLAN: Benachrichtigung und Dialog „Wo bist du gerade?“
- Einstellungen: Ziele, WLANs, KI für Arbeitsfotos, Auf dem Handy
- Ohne photoClasses: Einstellung und Marker lokal, Server-Filter ausgegraut

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

- Beispiele der KI beim App-Start im Hintergrund lesen, nicht im UI-Thread
- Mehr › Zuordnung: ausgegraute Einträge sagen den Grund (Schon Arbeit, …)
- Thumbnail für die KI über die einfache Medien-URI
- Texte der Snackbar und des Aufräumens über LocalResources

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