Files
simple-notes-sync/QUICKSTART.md
inventory69 5da4d73059 Add Quick Start Guide
- Complete setup instructions for Android Studio
- Server testing commands
- Current server IP (192.168.0.188:8080)
- Troubleshooting section
- Links to all documentation
2025-12-19 23:45:18 +01:00

5.3 KiB

🚀 Quick Start Guide

Server ist bereits gestartet!

Der WebDAV-Server läuft bereits auf:

  • Lokal: http://localhost:8080/
  • Im Netzwerk: http://192.168.0.188:8080/

Credentials

  • Username: noteuser
  • Password: SimpleNotes2025!

📱 Nächste Schritte: Android App erstellen

Option 1: Mit Android Studio (Empfohlen)

  1. Android Studio öffnen

    File → New → New Project
    
  2. Template wählen:

    • Empty Views Activity
  3. Projekt konfigurieren:

    Name: Simple Notes
    Package: com.example.simplenotes
    Save location: /home/liq/gitProjects/simple-notes-sync/android/
    Language: Kotlin
    Minimum SDK: API 24 (Android 7.0)
    Build configuration: Kotlin DSL
    
  4. Dependencies hinzufügen:

    Öffne app/build.gradle.kts und füge hinzu:

    dependencies {
        // ... existing dependencies
    
        // WebDAV
        implementation("com.github.thegrizzlylabs:sardine-android:0.8")
    
        // Coroutines
        implementation("org.jetbrains.kotlinx:kotlinx-coroutines-android:1.7.3")
    
        // JSON
        implementation("com.google.code.gson:gson:2.10.1")
    
        // WorkManager
        implementation("androidx.work:work-runtime-ktx:2.9.0")
    }
    

    Und in settings.gradle.kts:

    dependencyResolutionManagement {
        repositories {
            google()
            mavenCentral()
            maven { url = uri("https://jitpack.io") }  // Für Sardine
        }
    }
    
  5. Code implementieren:

    Alle Code-Beispiele findest du in:

    Kopiere der Reihe nach:

    • models/Note.kt
    • models/SyncStatus.kt
    • storage/NotesStorage.kt
    • utils/DeviceIdGenerator.kt
    • utils/NotificationHelper.kt
    • utils/Extensions.kt
    • utils/Constants.kt
    • UI Layouts aus dem Guide
    • Activities (MainActivity, NoteEditorActivity, SettingsActivity)
    • sync/WebDavSyncService.kt
    • sync/WifiSyncReceiver.kt
    • sync/SyncWorker.kt
    • adapters/NotesAdapter.kt
  6. AndroidManifest.xml anpassen:

    <uses-permission android:name="android.permission.INTERNET" />
    <uses-permission android:name="android.permission.ACCESS_NETWORK_STATE" />
    <uses-permission android:name="android.permission.ACCESS_WIFI_STATE" />
    <uses-permission android:name="android.permission.POST_NOTIFICATIONS" />
    
    <application
        ...
        android:usesCleartextTraffic="true">
    
  7. Build & Run:

    Build → Make Project
    Run → Run 'app'
    
  8. In der App konfigurieren:

    • Einstellungen öffnen
    • Server URL: http://192.168.0.188:8080/
    • Username: noteuser
    • Password: SimpleNotes2025!
    • Heim-WLAN SSID: DeinWLANName
    • "Verbindung testen" → sollte erfolgreich sein ✓

Option 2: Schritt-für-Schritt Implementation

Folge dem IMPLEMENTATION_PLAN.md mit 6 Sprints:

  1. Sprint 1: Server & Foundation (bereits done ✓)
  2. Sprint 2: Basic UI (4-6h)
  3. Sprint 3: Settings & WebDAV (6h)
  4. Sprint 4: Auto-Sync (6h)
  5. Sprint 5: Conflicts & Errors (6h)
  6. Sprint 6: Polish & Testing (6h)

🧪 Server testen

Der Server läuft bereits. Teste ihn:

# Einfacher Test
curl -u noteuser:SimpleNotes2025! http://localhost:8080/

# Test-Notiz hochladen
echo '{"id":"test-123","title":"Test","content":"Hello World","createdAt":1703001234567,"updatedAt":1703001234567,"deviceId":"test","syncStatus":"SYNCED"}' > test.json

curl -u noteuser:SimpleNotes2025! \
  -T test.json \
  http://localhost:8080/test.json

# Test-Notiz abrufen
curl -u noteuser:SimpleNotes2025! http://localhost:8080/test.json

# Löschen
curl -u noteuser:SimpleNotes2025! \
  -X DELETE \
  http://localhost:8080/test.json

📊 Server Management

cd /home/liq/gitProjects/simple-notes-sync/server

# Status
docker-compose ps

# Logs
docker-compose logs -f

# Stoppen
docker-compose down

# Neu starten
docker-compose up -d

# Daten ansehen
ls -la notes-data/

🔧 Troubleshooting

Server nicht erreichbar von Android

  1. Firewall prüfen:

    sudo ufw status
    sudo ufw allow 8080
    
  2. Ping-Test:

    ping 192.168.0.188
    
  3. Port-Test:

    telnet 192.168.0.188 8080
    

Permission Denied in Android

  • Android 13+: POST_NOTIFICATIONS Permission akzeptieren
  • Internet Permission in Manifest vorhanden?
  • usesCleartextTraffic="true" gesetzt?

📚 Weitere Hilfe


Server Status: Running on http://192.168.0.188:8080/ Next: Android App in Android Studio erstellen Estimated Time: 18-24 Stunden für vollständige App

Viel Erfolg! 🚀