Initial commit: Simple Notes Sync project setup
Features: - Docker WebDAV server with docker-compose - Server configuration with .env - Project structure for Android app - Complete documentation references - MIT License Server: - bytemark/webdav Docker image - Basic authentication - Port 8080 exposed - Volume mounts for data and logs - Quick start README Android: - Project structure defined - README with setup instructions - Links to complete implementation guide Status: Server running and tested ✓ Next: Android app implementation in Android Studio
This commit is contained in:
120
android/README.md
Normal file
120
android/README.md
Normal file
@@ -0,0 +1,120 @@
|
||||
# Simple Notes - Android App
|
||||
|
||||
## 🚧 Development Setup
|
||||
|
||||
### Voraussetzungen
|
||||
|
||||
- Android Studio Hedgehog (2023.1.1) oder neuer
|
||||
- JDK 17
|
||||
- Android SDK 34
|
||||
- Min SDK 24
|
||||
|
||||
### Projekt in Android Studio öffnen
|
||||
|
||||
```bash
|
||||
# In Android Studio:
|
||||
# File → New → New Project
|
||||
# Template: Empty Views Activity
|
||||
#
|
||||
# Settings:
|
||||
# Name: Simple Notes
|
||||
# Package: com.example.simplenotes
|
||||
# Save location: /home/liq/gitProjects/simple-notes-sync/android/
|
||||
# Language: Kotlin
|
||||
# Minimum SDK: API 24
|
||||
# Build configuration: Kotlin DSL
|
||||
```
|
||||
|
||||
### Dependencies
|
||||
|
||||
Siehe `ANDROID_GUIDE.md` in project-docs für vollständige `build.gradle.kts`:
|
||||
|
||||
**Hauptabhängigkeiten:**
|
||||
- Sardine Android (WebDAV Client)
|
||||
- Kotlin Coroutines
|
||||
- Gson (JSON)
|
||||
- WorkManager (Background Sync)
|
||||
- Material Design Components
|
||||
|
||||
### Projektstruktur
|
||||
|
||||
```
|
||||
android/
|
||||
└── app/
|
||||
└── src/
|
||||
└── main/
|
||||
├── AndroidManifest.xml
|
||||
├── java/com/example/simplenotes/
|
||||
│ ├── MainActivity.kt
|
||||
│ ├── NoteEditorActivity.kt
|
||||
│ ├── SettingsActivity.kt
|
||||
│ ├── models/
|
||||
│ │ ├── Note.kt
|
||||
│ │ └── SyncStatus.kt
|
||||
│ ├── storage/
|
||||
│ │ └── NotesStorage.kt
|
||||
│ ├── sync/
|
||||
│ │ ├── WebDavSyncService.kt
|
||||
│ │ ├── WifiSyncReceiver.kt
|
||||
│ │ ├── SyncWorker.kt
|
||||
│ │ └── ConflictResolver.kt
|
||||
│ ├── adapters/
|
||||
│ │ └── NotesAdapter.kt
|
||||
│ └── utils/
|
||||
│ ├── DeviceIdGenerator.kt
|
||||
│ ├── NotificationHelper.kt
|
||||
│ ├── Extensions.kt
|
||||
│ └── Constants.kt
|
||||
└── res/
|
||||
├── layout/
|
||||
├── values/
|
||||
└── drawable/
|
||||
```
|
||||
|
||||
## 📖 Development Guide
|
||||
|
||||
Vollständige Code-Beispiele und Implementation:
|
||||
- [ANDROID_GUIDE.md](https://github.com/inventory69/project-docs/blob/main/simple-notes-sync/ANDROID_GUIDE.md)
|
||||
- [IMPLEMENTATION_PLAN.md](https://github.com/inventory69/project-docs/blob/main/simple-notes-sync/IMPLEMENTATION_PLAN.md)
|
||||
|
||||
## 🏗️ Build
|
||||
|
||||
```bash
|
||||
# Debug Build
|
||||
./gradlew assembleDebug
|
||||
|
||||
# Release Build
|
||||
./gradlew assembleRelease
|
||||
|
||||
# Install on connected device
|
||||
./gradlew installDebug
|
||||
```
|
||||
|
||||
## 🧪 Testing
|
||||
|
||||
```bash
|
||||
# Run unit tests
|
||||
./gradlew test
|
||||
|
||||
# Run instrumented tests
|
||||
./gradlew connectedAndroidTest
|
||||
```
|
||||
|
||||
## 📝 TODO
|
||||
|
||||
- [ ] Projekt in Android Studio erstellen
|
||||
- [ ] Dependencies einrichten
|
||||
- [ ] Models implementieren (Note.kt, SyncStatus.kt)
|
||||
- [ ] Storage Layer (NotesStorage.kt)
|
||||
- [ ] UI Layouts erstellen
|
||||
- [ ] Activities implementieren
|
||||
- [ ] Sync Service (WebDavSyncService.kt)
|
||||
- [ ] WLAN Detection (WifiSyncReceiver.kt)
|
||||
- [ ] WorkManager Setup (SyncWorker.kt)
|
||||
- [ ] Notifications (NotificationHelper.kt)
|
||||
- [ ] Error Handling
|
||||
- [ ] Testing
|
||||
|
||||
---
|
||||
|
||||
**Next Step:** Projekt in Android Studio erstellen und Code aus ANDROID_GUIDE.md übernehmen.
|
||||
Reference in New Issue
Block a user