Tekniker och metoder
ALKdevs mobilappar är byggda med:
- Kotlin och Jetpack Compose: För moderna och underhållbara gränssnitt.
- Hilt: För dependency injection och tydlig separation av ansvar.
- Lagerbaserad arkitektur: Kod struktureras i
ui,domainochdataför att förenkla underhåll och vidareutveckling. - Lokala AI-modeller: Integration av språkmodeller (t.ex. MediaPipe, LiteRT, Qwen) för snabba och säkra beslut direkt på enheten.
Exempel på leveranser
Hybridappar med WebView och lokal AI
- GrammarStrike: En hybridapp där spelgränssnittet är byggt i HTML och laddas i en WebView, medan en lokal språkmodell (Gemma 3 1B int4) körs på enheten för att bedöma meningsbyggnad. Modellen paketeras i APK:n för offline-användning.
- Paketering av modeller: Modeller på upp till 555 MB inkluderas i APK:n, med stöd för fyra ABI:er och min SDK 26. Detta säkerställer att appen fungerar direkt efter installation, utan nedladdning.
Realtidsmultiplayer och synkronisering
- Ordvis: Ett tvåspelarspel där spelare skapar meningar utifrån givna ord. En lokal språkmodell (Qwen) dömer meningarna och tilldelar poäng, medan Firebase Realtime Database hanterar realtidssynkronisering mellan spelare. Appen stöder anonym inloggning och djuplänkar för att bjuda in motspelare.
- WebSocket-relay: Egenutvecklade protokoll för att hantera multiplayer-interaktioner, som i GrammarStrike där spelare synkas via en relay på
ws://152.42.141.196:8080.
Felsäkerhet och reservlösningar
- Demo-AI: Om en lokal språkmodell (t.ex. Qwen i Ordvis) inte startar, aktiveras en demo-AI för att säkerställa att appen förblir funktionell.
- Tysta fel: System designas för att undvika gissningar vid osäker indata, vilket förhindrar felaktiga resultat.
Säkerhet och stabilitet
- Brandväggshantering: Konfiguration av UFW och Docker för att minimera exponering av tjänster.
- Hemlighetshantering: Nycklar och tokens lagras i Bitwarden för att undvika hårdkodade värden i källkod.
- Validering och tester: System testas för att säkerställa driftsäkerhet och robusthet.







