FEATURES
========
Batch Delete Toast Aggregation:
- New deleteMultipleNotesFromServer() method
- Shows single aggregated toast instead of multiple ("3 notes deleted from server")
- Partial success handling ("3 of 5 notes deleted from server")
- Added string resources: snackbar_notes_deleted_from_server, snackbar_notes_deleted_from_server_partial
Text Editor Cursor Fix:
- Fixed cursor jumping to end after every keystroke when editing notes
- Added initialCursorSet flag to only set cursor position on first load
- Cursor now stays at user's position while editing
- Changed LaunchedEffect(content) to LaunchedEffect(Unit) to prevent repeated resets
DOCUMENTATION REFACTOR
======================
Breaking Change: English is now the default language
- README.md: Now English (was German)
- QUICKSTART.md: Now English (was German)
- CHANGELOG.md: Now English (was mixed EN/DE)
- docs/*.md: All English (was German)
- German versions: Use .de.md suffix (README.de.md, QUICKSTART.de.md, etc.)
Updated for v1.5.0:
- CHANGELOG.md: Fully translated to English with v1.5.0 release notes
- CHANGELOG.de.md: Created German version
- FEATURES.md: Added i18n section, Selection Mode, Jetpack Compose updates
- FEATURES.de.md: Updated with v1.5.0 features
- UPCOMING.md: v1.5.0 marked as released, v1.6.0/v1.7.0 roadmap
- UPCOMING.de.md: Updated German version
All language headers updated:
- English: [Deutsch](*.de.md) · **English**
- German: **Deutsch** · [English](*.md)
F-DROID METADATA
================
Changelogs (F-Droid):
- fastlane/metadata/android/en-US/changelogs/13.txt: Created
- fastlane/metadata/android/de-DE/changelogs/13.txt: Created
Descriptions:
- full_description.txt (EN/DE): Updated with v1.5.0 changes
- Selection Mode instead of Swipe-to-Delete
- i18n support highlighted
- Jetpack Compose UI mentioned
- Silent-Sync Mode added
OTHER FIXES
===========
Code Quality:
- Unused imports removed from multiple files
- maxLineLength fixes
- Detekt config optimized (increased thresholds for v1.5.0)
- AboutScreen: Uses app foreground icon directly
- EmptyState: Shows app icon instead of emoji
- themes.xml: Splash screen uses app foreground icon
11 KiB
Vollständige Feature-Liste 📋
🌍 Sprachen: Deutsch · English
Alle Features von Simple Notes Sync im Detail
📝 Notiz-Verwaltung
Notiz-Typen
- ✅ Textnotizen - Klassische Freitext-Notizen
- ✅ Checklisten (NEU in v1.4.0) - Aufgabenlisten mit Tap-to-Check
- ➕ Items hinzufügen über Eingabefeld
- ☑️ Tap zum Abhaken/Wieder-Öffnen
- 📌 Long-Press für Drag & Drop Sortierung
Durchstreichenbei erledigten Einträgen
Basis-Funktionen
- ✅ Automatisches Speichern - Kein manuelles Speichern nötig
- ✅ Titel + Inhalt - Klare Struktur für jede Notiz
- ✅ Zeitstempel - Erstellungs- und Änderungsdatum automatisch
- ✅ Auswahlmodus (NEU in v1.5.0) - Long-Press für Mehrfachauswahl und Batch-Löschen
- ✅ Bestätigungs-Dialog - Schutz vor versehentlichem Löschen
- ✅ Jetpack Compose UI (NEU in v1.5.0) - Moderne, performante Benutzeroberfläche
- ✅ Material Design 3 - Moderne, saubere UI
- ✅ Dark Mode - Automatisch je nach System-Einstellung
- ✅ Dynamic Colors - Passt sich deinem Android-Theme an
Editor
- ✅ Minimalistischer Editor - Kein Schnickschnack
- ✅ Auto-Fokus - Direkt losschreiben
- ✅ Vollbild-Modus - Maximale Schreibfläche
- ✅ Speichern-Button - Manuelle Bestätigung möglich
- ✅ Zurück-Navigation - Speichert automatisch
- ✅ Slide-Animationen (NEU in v1.5.0) - Flüssige Übergänge
🌍 Mehrsprachigkeit (NEU in v1.5.0)
Unterstützte Sprachen
- ✅ Englisch - Primäre Sprache (Standard)
- ✅ Deutsch - Vollständige Übersetzung
Sprachauswahl
- ✅ Automatische Erkennung - Folgt der System-Sprache
- ✅ Manuelle Auswahl - In den Einstellungen umschaltbar
- ✅ Per-App Language - Android 13+ native Sprachauswahl
- ✅ locales_config.xml - Vollständige Android-Integration
Umfang
- ✅ 400+ Strings - Komplett übersetzt
- ✅ UI-Texte - Alle Buttons, Dialoge, Menüs
- ✅ Fehlermeldungen - Hilfreiche lokalisierte Hinweise
- ✅ Einstellungen - 7 kategorisierte Screens
💾 Backup & Wiederherstellung
Lokales Backup System
- ✅ JSON-Export - Alle Notizen in einer Datei
- ✅ Freie Speicherort-Wahl - Downloads, SD-Karte, Cloud-Ordner
- ✅ Dateinamen mit Zeitstempel -
simplenotes_backup_YYYY-MM-DD_HHmmss.json - ✅ Vollständiger Export - Titel, Inhalt, Timestamps, IDs
- ✅ Menschenlesbares Format - JSON mit Formatierung
- ✅ Unabhängig vom Server - Funktioniert komplett offline
Wiederherstellungs-Modi
- ✅ Zusammenführen (Merge) - Neue Notizen hinzufügen, bestehende behalten (Standard)
- ✅ Ersetzen (Replace) - Alle löschen und Backup importieren
- ✅ Duplikate überschreiben (Overwrite) - Backup gewinnt bei ID-Konflikten
- ✅ Automatisches Sicherheits-Backup - Vor jeder Wiederherstellung
- ✅ Backup-Validierung - Prüft Format und Version
- ✅ Fehlerbehandlung - Klare Fehlermeldungen bei Problemen
🖥️ Desktop-Integration
Markdown-Export
- ✅ Automatischer Export - Jede Notiz →
.mdDatei - ✅ Checklisten als Task-Listen (NEU) -
- [ ]/- [x]Format (GitHub-kompatibel) - ✅ Dual-Format - JSON (Master) + Markdown (Mirror)
- ✅ Dateinamen-Sanitization - Sichere Dateinamen aus Titeln
- ✅ Duplikat-Handling (NEU) - ID-Suffix bei gleichen Titeln
- ✅ Frontmatter-Metadata - YAML mit ID, Timestamps, Type
- ✅ WebDAV-Sync - Parallel zum JSON-Sync
- ✅ Optional - In Einstellungen ein/ausschaltbar
- ✅ Initial Export - Alle bestehenden Notizen beim Aktivieren
- ✅ Progress-Anzeige - Zeigt X/Y beim Export
Markdown-Import
- ✅ Desktop → App - Änderungen vom Desktop importieren
- ✅ Last-Write-Wins - Konfliktauflösung via Timestamp
- ✅ Frontmatter-Parsing - Liest Metadata aus
.mdDateien - ✅ Neue Notizen erkennen - Automatisch in App übernehmen
- ✅ Updates erkennen - Nur wenn Desktop-Version neuer ist
- ✅ Fehlertoleranz - Einzelne Fehler brechen Import nicht ab
WebDAV-Zugriff
- ✅ Network Drive Mount - Windows, macOS, Linux
- ✅ Jeder Markdown-Editor - VS Code, Typora, Notepad++, iA Writer
- ✅ Live-Bearbeitung - Direkter Zugriff auf
.mdDateien - ✅ Ordner-Struktur -
/notes/für JSON,/notes-md/für Markdown - ✅ Automatische Ordner-Erstellung - Beim ersten Sync
🔄 Synchronisation
Auto-Sync
- ✅ Intervall-Auswahl - 15, 30 oder 60 Minuten
- ✅ WiFi-Trigger - Sync bei WiFi-Verbindung (keine SSID-Einschränkung)
- ✅ Akkuschonend - ~0.2-0.8% pro Tag
- ✅ Smart Server-Check - Sync nur wenn Server erreichbar
- ✅ WorkManager - Zuverlässige Background-Ausführung
- ✅ Battery-Optimierung kompatibel - Funktioniert auch mit Doze Mode
Sync-Trigger (6 Stück)
- ✅ Periodic Sync - Automatisch nach Intervall
- ✅ App-Start Sync - Beim Öffnen der App
- ✅ WiFi-Connect Sync - Bei jeder WiFi-Verbindung
- ✅ Manual Sync - Button in Einstellungen
- ✅ Pull-to-Refresh - Wisch-Geste in Notizliste
- ✅ Settings-Save Sync - Nach Server-Konfiguration
Sync-Mechanismus
- ✅ Upload - Lokale Änderungen zum Server
- ✅ Download - Server-Änderungen in App
- ✅ Konflikt-Erkennung - Bei gleichzeitigen Änderungen
- ✅ Konfliktfreies Merging - Last-Write-Wins via Timestamp
- ✅ Sync-Status Tracking - LOCAL_ONLY, PENDING, SYNCED, CONFLICT
- ✅ Fehlerbehandlung - Retry bei Netzwerkproblemen
- ✅ Offline-First - App funktioniert ohne Server
Server-Verbindung
- ✅ WebDAV-Protokoll - Standard-Protokoll
- ✅ HTTP/HTTPS - HTTP nur lokal, HTTPS für extern
- ✅ Username/Password - Basic Authentication
- ✅ Connection Test - In Einstellungen testen
- ✅ Server-URL Normalisierung - Automatisches
/notes/und/notes-md/(NEU in v1.2.1) - ✅ Flexible URL-Eingabe - Beide Varianten funktionieren:
http://server/undhttp://server/notes/
🔒 Privacy & Sicherheit
Self-Hosted
- ✅ Eigener Server - Volle Kontrolle über Daten
- ✅ Keine Cloud - Keine Drittanbieter
- ✅ Kein Tracking - Keine Analytik, keine Telemetrie
- ✅ Kein Account - Nur Server-Zugangsdaten
- ✅ 100% Open Source - MIT Lizenz
Daten-Sicherheit
- ✅ Lokale Speicherung - App-Private Storage (Android)
- ✅ WebDAV-Verschlüsselung - HTTPS für externe Server
- ✅ Passwort-Speicherung - Android SharedPreferences (verschlüsselt)
- ✅ Keine Drittanbieter-Libs - Nur Android SDK + Sardine (WebDAV)
Entwickler-Features
- ✅ Datei-Logging - Optional, nur bei Aktivierung (NEU in v1.3.2)
- ✅ Datenschutz-Hinweis - Explizite Warnung bei Aktivierung
- ✅ Lokale Logs - Logs bleiben auf dem Gerät
🔋 Performance & Optimierung
Akku-Effizienz
- ✅ Optimierte Sync-Intervalle - 15/30/60 Min
- ✅ WiFi-Only - Kein Mobile Data Sync
- ✅ Smart Server-Check - Sync nur wenn Server erreichbar
- ✅ WorkManager - System-optimierte Ausführung
- ✅ Doze Mode kompatibel - Sync läuft auch im Standby
- ✅ Gemessener Verbrauch:
- 15 Min: ~0.8% / Tag (~23 mAh)
- 30 Min: ~0.4% / Tag (~12 mAh) ⭐ Empfohlen
- 60 Min: ~0.2% / Tag (~6 mAh)
App-Performance
- ✅ Offline-First - Funktioniert ohne Internet
- ✅ Instant-Load - Notizen laden in <100ms
- ✅ Smooth Scrolling - RecyclerView mit ViewHolder
- ✅ Material Design 3 - Native Android UI
- ✅ Kotlin Coroutines - Asynchrone Operationen
- ✅ Minimale APK-Größe - ~2 MB
🛠️ Technische Details
Plattform
- ✅ Android 8.0+ (API 26+)
- ✅ Target SDK 36 (Android 15)
- ✅ Kotlin - Moderne Programmiersprache
- ✅ Material Design 3 - Neueste Design-Richtlinien
- ✅ ViewBinding - Typ-sichere View-Referenzen
Architektur
- ✅ MVVM-Light - Einfache Architektur
- ✅ Single Activity - Moderne Navigation
- ✅ Kotlin Coroutines - Async/Await Pattern
- ✅ Dispatchers.IO - Background-Operationen
- ✅ SharedPreferences - Settings-Speicherung
- ✅ File-Based Storage - JSON-Dateien lokal
- ✅ Custom Exceptions - Dedizierte SyncException für bessere Fehlerbehandlung (NEU in v1.3.2)
Abhängigkeiten
- ✅ AndroidX - Jetpack Libraries
- ✅ Material Components - Material Design 3
- ✅ Sardine - WebDAV Client (com.thegrizzlylabs)
- ✅ Gson - JSON Serialization
- ✅ WorkManager - Background Tasks
- ✅ OkHttp - HTTP Client (via Sardine)
Build-Varianten
- ✅ Standard - Universal APK (100% FOSS, keine Google-Dependencies)
- ✅ F-Droid - Identisch mit Standard (100% FOSS)
- ✅ Debug/Release - Entwicklung und Production
- ✅ Keine Google Services - Komplett FOSS, keine proprietären Bibliotheken
📦 Server-Kompatibilität
Getestete WebDAV-Server
- ✅ Docker WebDAV (empfohlen für Self-Hosting)
- ✅ Nextcloud - Vollständig kompatibel
- ✅ ownCloud - Funktioniert einwandfrei
- ✅ Apache mod_dav - Standard WebDAV
- ✅ nginx + WebDAV - Mit korrekter Konfiguration
Server-Features
- ✅ Basic Auth - Username/Password
- ✅ Directory Listing - Für Download
- ✅ PUT/GET - Upload/Download
- ✅ MKCOL - Ordner erstellen
- ✅ DELETE - Notizen löschen (zukünftig)
🔮 Zukünftige Features
Geplant für kommende Versionen:
v1.4.0 - Checklisten
- ⏳ Checklisten-Notizen - Neuer Notiz-Typ mit Checkboxen
- ⏳ Erledigte Items - Durchstreichen/Abhaken
- ⏳ Drag & Drop - Items neu anordnen
v1.5.0 - Internationalisierung
- ⏳ Mehrsprachigkeit - Deutsch + Englisch UI
- ⏳ Sprachauswahl - In Einstellungen wählbar
- ⏳ Vollständige Übersetzung - Alle Strings in beiden Sprachen
v1.6.0 - Modern APIs
- ⏳ LocalBroadcastManager ersetzen - SharedFlow stattdessen
- ⏳ PackageInfo Flags - PackageInfoFlags.of() verwenden
- ⏳ Komplexitäts-Refactoring - Lange Funktionen aufteilen
📊 Vergleich mit anderen Apps
| Feature | Simple Notes Sync | Google Keep | Nextcloud Notes |
|---|---|---|---|
| Offline-First | ✅ | ⚠️ Eingeschränkt | ⚠️ Eingeschränkt |
| Self-Hosted | ✅ | ❌ | ✅ |
| Auto-Sync | ✅ | ✅ | ✅ |
| Markdown-Export | ✅ | ❌ | ✅ |
| Desktop-Zugriff | ✅ (WebDAV) | ✅ (Web) | ✅ (Web + WebDAV) |
| Lokales Backup | ✅ | ❌ | ⚠️ Server-Backup |
| Kein Google-Account | ✅ | ❌ | ✅ |
| Open Source | ✅ MIT | ❌ | ✅ AGPL |
| APK-Größe | ~2 MB | ~50 MB | ~8 MB |
| Akku-Verbrauch | ~0.4%/Tag | ~1-2%/Tag | ~0.5%/Tag |
❓ FAQ
Q: Brauche ich einen Server?
A: Nein! Die App funktioniert auch komplett offline. Der Server ist optional für Sync.
Q: Welcher Server ist am besten?
A: Für Einstieg: Docker WebDAV (einfach, leicht). Für Profis: Nextcloud (viele Features).
Q: Funktioniert Markdown-Export ohne Desktop-Integration?
A: Nein, du musst das Feature in den Einstellungen aktivieren.
Q: Gehen meine Daten verloren wenn ich den Server wechsle?
A: Nein! Erstelle ein lokales Backup, wechsle Server, stelle wieder her.
Q: Warum JSON + Markdown?
A: JSON ist zuverlässig und schnell (Master). Markdown ist menschenlesbar (Mirror für Desktop).
Q: Kann ich die App ohne Google Play nutzen?
A: Ja! Lade die APK direkt von GitHub oder nutze F-Droid.
Letzte Aktualisierung: v1.3.2 (2026-01-10)