iOS-App: Kamera, Outbox, RoomPlan und LiDAR
Die SwiftUI-App nutzt AVFoundation für Fotos und Codes, eine persistente Outbox für Uploads und RoomPlan für parametrische Raumgeometrie.
Open Inventory
Technische Notizen · MIT-lizenziert

Kurz zusammengefasst
- AVFoundation liefert Fotos sowie QR- und Barcode-Erkennung
- Die Outbox persistiert Fotos, IDs und bestätigte API-Stufen
- RoomPlan liefert parametrische Geometrie, keinen fotorealistischen Scan
Echte App-Aufnahme
Karte in der nativen SwiftUI-App

Mehr als eine Webansicht
Native Komponenten und unterstützte Codes
Die MIT-lizenzierte SwiftUI-App liegt unter ios/Inventory. AVFoundation liefert Kamerabilder und Metadaten für QR, EAN-8/13, UPC-E, Code 128, Data Matrix, PDF417 und Aztec.
Die App löst UUID, Open-Inventory-Link, exakte SKU oder Seriennummer gegen den Server auf. Ein unbekannter Code kann als Identifier für einen neuen Eintrag übernommen werden. Danach folgen dieselben REST-Schritte wie im Web: Resource anlegen, Medien hochladen, optional analysieren und optional ein Cover erzeugen.
Der Bearer-Token liegt im iOS-Schlüsselbund. Fotos, Resource-ID, Media-IDs und Stage-Status werden servergebunden unter Application Support gespeichert. Wiederholungen verwenden pro Stufe stabile Idempotency-Keys.
Inventarisieren in Sekunden
Persistente Outbox und stufenweise API-Aufrufe
- 01
Origin und Token setzen
Die Root-URL bindet Queue-Einträge an einen Server. Öffentliche Hosts müssen HTTPS verwenden, bevor ein Bearer-Token gesendet wird.
- 02
Code auflösen oder Resource vorbereiten
Öffne einen vorhandenen Gegenstand über seinen Code oder erstelle einen neuen Eintrag mit bis zu zwölf Fotos.
- 03
Request-Daten ergänzen
Wähle Standort, optional GPS und – falls vorbereitet – den räumlichen Modus. Bei Bedarf kann ein Bestand direkt empfangen oder nach Bestätigung ausgegeben werden.
- 04
Job in Application Support persistieren
Die App kopiert Fotos in die Outbox und speichert die aktuelle Stufe. Danach können Upload und optionale KI-Schritte nacheinander laufen.
- 05
Serverzustand prüfen
Nach jeder Stufe speichert die App die zurückgegebenen IDs. Bei einem Neustart setzt sie beim letzten bestätigten Zustand fort; fachliche Felder müssen trotzdem geprüft werden.
RoomPlan
RoomPlan-Geometrie und Objektpositionen
Auf einem LiDAR-fähigen iPhone nimmt RoomPlan Wände, Öffnungen, Böden und erkannte Einrichtungsobjekte als parametrische Szene auf. Räume desselben Durchlaufs teilen sich ein ARKit-Koordinatensystem und können im Web gemeinsam gerendert werden.
Für ein Inventarobjekt relokalisiert sich die App im gespeicherten AR-Raum. Die Position kommt bevorzugt aus LiDAR-Tiefe, ersatzweise aus einer Ebenenschätzung. Foto, Raum-ID, Transform und Referenzframe laufen danach durch die normale Upload-Queue.
RoomPlan speichert kein fotorealistisches Mesh. Die Geometrie ist vereinfacht und kann Türen, Spiegel oder unklare Übergänge falsch klassifizieren. Deshalb bleiben manuelle Raumauswahl und reale Gerätetests nötig.
Vor dem Einsatz
Grenzen von Netz, Hardware und Umgebung
- Der Server muss vom iPhone erreichbar sein; Bearer-Tokens werden für öffentliche Hosts nicht über unverschlüsseltes HTTP gesendet.
- Der Simulator eignet sich für Teile von API und Oberfläche, nicht als Abnahme für Kamera, Scanner, LiDAR oder räumliche Genauigkeit.
- Spiegelnde, strukturlose oder bewegte Szenen können AR-Erfassung und visuelle Wiedererkennung erschweren.
- KI-Bilderkennung ist ein optionaler externer Verarbeitungsschritt, wenn ein entsprechender Anbieter konfiguriert wurde.
- Ein räumlicher Marker ergänzt den Inventareintrag; fachlich wichtige Standortangaben sollten weiterhin verständlich benannt werden.
Offen weiterbauen
Codepfade im offenen Repository
Server-Routen, DTOs, APIClient, IntakeQueue, RoomPlan-Controller und SwiftUI-Oberflächen liegen gemeinsam im Open-Source-Repository. Dadurch lässt sich der mobile Request-Pfad vom Foto bis zum Datenbankeintrag direkt nachvollziehen.
Die MIT-Lizenz erlaubt eigene Builds und Änderungen. Für Signierung, Kamera, LiDAR und RoomPlan brauchst du trotzdem Apple-Werkzeuge sowie Tests auf einem physischen Gerät. Der Simulator deckt diese Hardwarepfade nicht ab.
Weiterführend