74 lines
2.5 KiB
Markdown
74 lines
2.5 KiB
Markdown
# Vikunja iOS
|
||
|
||
Eine native iOS-App, die die [Vikunja](https://vikunja.io) Web-Oberfläche als WKWebView-Wrapper bereitstellt – für den schnellen Zugriff auf eine selbst gehostete Vikunja-Instanz im lokalen Netzwerk.
|
||
|
||
## Features
|
||
|
||
- Vollbild-WebView der Vikunja-Instanz
|
||
- Persistente Login-Session (Cookies & LocalStorage bleiben erhalten)
|
||
- Native Swipe-Gesten für Vor/Zurück-Navigation
|
||
- Unterstützung für HTTP im lokalen Netzwerk (App Transport Security konfiguriert)
|
||
- Universelles App-Icon (Vikunja-Logo)
|
||
|
||
## Voraussetzungen
|
||
|
||
- macOS mit [Xcode](https://developer.apple.com/xcode/) (≥ 16)
|
||
- iOS-Gerät oder Simulator (iOS ≥ 17)
|
||
- Laufende Vikunja-Instanz im lokalen Netzwerk
|
||
- Apple-ID (kostenlos) zum Signieren
|
||
|
||
## Konfiguration
|
||
|
||
Die URL der Vikunja-Instanz wird in `VikunjaApp/VikunjaApp/ContentView.swift` eingetragen:
|
||
|
||
```swift
|
||
let vikunjaURL = URL(string: "http://192.168.X.X:PORT")!
|
||
```
|
||
|
||
Außerdem muss die IP in `VikunjaApp/VikunjaApp/Info.plist` unter `NSAppTransportSecurity → NSExceptionDomains` angepasst werden:
|
||
|
||
```xml
|
||
<key>192.168.X.X</key>
|
||
<dict>
|
||
<key>NSExceptionAllowsInsecureHTTPLoads</key>
|
||
<true/>
|
||
</dict>
|
||
```
|
||
|
||
## Installation
|
||
|
||
### Auf eigenem Gerät (kostenlos)
|
||
|
||
1. Repository klonen und `VikunjaApp/VikunjaApp.xcodeproj` in Xcode öffnen
|
||
2. URL in `ContentView.swift` und `Info.plist` anpassen
|
||
3. Unter **Signing & Capabilities** die eigene Apple-ID als Team auswählen
|
||
4. iPhone per Kabel verbinden, als Build-Target auswählen
|
||
5. `⌘R` – App wird gebaut und installiert
|
||
6. Beim ersten Start: **Einstellungen → Allgemein → VPN & Geräteverwaltung → App vertrauen**
|
||
|
||
> **Hinweis:** Mit einem kostenlosen Apple-Account läuft das Signierzertifikat nach 7 Tagen ab. Einfach erneut `⌘R` in Xcode ausführen, um neu zu signieren.
|
||
|
||
### Via TestFlight (kostenpflichtig)
|
||
|
||
Erfordert einen [Apple Developer Account](https://developer.apple.com/programs/) ($99/Jahr):
|
||
|
||
1. Xcode → **Product → Archive**
|
||
2. Im Organizer: **Distribute App → TestFlight & App Store**
|
||
|
||
## Projektstruktur
|
||
|
||
```
|
||
VikunjaApp/
|
||
└── VikunjaApp/
|
||
├── VikunjaApp.swift # App-Einstiegspunkt (@main)
|
||
├── ContentView.swift # Haupt-View, URL-Konfiguration
|
||
├── WebView.swift # WKWebView UIViewRepresentable-Wrapper
|
||
├── Info.plist # App Transport Security, Bundle-Keys
|
||
└── Assets.xcassets/
|
||
└── AppIcon.appiconset/ # Vikunja-Logo als App-Icon
|
||
```
|
||
|
||
## Lizenz
|
||
|
||
Privates Projekt. Das Vikunja-Logo ist Eigentum des [Vikunja-Projekts](https://vikunja.io).
|