- domain-packs/ios-app/: komplett referanse-pakke (8 komponenter) — pack.json med components-map, conventions.md, 4 patterns/, gotchas.md, checklist.md splittet i 3 (App Store-submission + security-privacy/MASVS 2.1 + accessibility/WCAG 2.2 AA), 3 scaffold/-maler (PrivacyInfo.xcprivacy-plist, NSUsageDescription-inventar, ASC-metadata), eksempel-feature-brief i Voyage strict-mode-format, glossary.md. Hver teknisk påstand verifisert mot Apple Developer / W3C WAI / OWASP MAS. - domain-packs/claude-code-plugin/: stub — pack.json + conventions.md + gotchas.md + checklist.md + glossary.md ferdige (ekstrahert fra ktg-privat-konvensjoner); patterns/scaffold/examples er stubs. - docs/domain-pack-spec.md: § D2/D3/D4/D7 + restrisiko oppdatert — pack.json components-felt, core/supplementary låst til manifestet, checklist-splitt-konvensjon, snapshot-materialiserings-mekanikk presisert, iOS-versjons-korreksjon (iOS 26, ikke "iOS 18/19"), D7 → "forfattet i S6". - prototype-run/friksjon.md: #9 (Akashic-briefen refererer "iOS 19" som ikke finnes — rettes i S7) + S6-prosessnotater (checklist-splitt bekreftet nødvendig, components-gap fylt, verifiserings-asymmetri ios-app vs claude-code-plugin notert). - CLAUDE.md: peker til domain-packs/ under § Status. Co-Authored-By: Claude Opus 4.7 <noreply@anthropic.com>
4.7 KiB
iOS-app — glossar
ATT (App Tracking Transparency) — rammeverk + system-prompt som kreves før en app kan tracke brukeren på tvers av apper/nettsteder (f.eks. lese IDFA). Krever NSUserTrackingUsageDescription. Uten samtykke returnerer IDFA bare nuller.
ATS (App Transport Security) — iOS-policy som krever HTTPS for all utgående trafikk by default. Unntak via NSAppTransportSecurity-dict i Info.plist; brede unntak (NSAllowsArbitraryLoads) krever begrunnelse ved App Review.
App Group — delt container (group.<bundle-id>) som lar en app og dens extensions (widget, Live Activity) dele filer / UserDefaults / en SwiftData-store.
App Privacy Details — "nutrition label" på App Store-produktsiden. Utvikler deklarerer i App Store Connect hvilke datatyper appen (og dens SDK-er) samler, til hvilket formål, og om linket til identitet / brukt til tracking.
App Review — Apples manuelle + automatiske gjennomgang før en app/oppdatering publiseres. Styres av App Store Review Guidelines.
App Store Connect (ASC) — Apples webportal for app-metadata, bygg-opplasting, TestFlight, priser, personvern-deklarasjoner, innsending.
Capabilities / entitlements — opt-in-funksjoner (Push, App Groups, HealthKit, Sign in with Apple, Live Activities, …) som aktiveres i Xcode og signeres inn i appen. App Review sjekker at capabilities matcher faktisk bruk.
Core Location / CLLocationManager — iOS-API for posisjon. Krever NSLocationWhenInUseUsageDescription (eller ...AlwaysAndWhenInUse...).
Deployment target — laveste iOS-versjon appen kjører på. Distinkt fra base SDK (versjonen appen bygges mot; Apple krever bygg med en bestemt minimums-SDK for innsending).
DSA trader status — under EUs Digital Services Act må app-distributører oppgi verifisert kontaktinfo i App Store Connect; ellers fjernes appen fra EU App Store.
Dynamic Island — det interaktive området rundt front-kameraet på iPhone 14 Pro+ / standard på iPhone 15+; vert for Live Activities.
Dynamic Type — iOS-funksjon for brukervalgt tekststørrelse; apper skal skalere uten avkutting (WCAG 1.4.4 / 1.4.10).
GRAC — Korea Game Rating and Administration Committee; spill distribuert i Sør-Korea trenger GRAC-rating.
HIG (Human Interface Guidelines) — Apples designretningslinjer. Gjeldende designspråk: Liquid Glass (iOS 26, WWDC 2025).
ICP filing — kinesisk myndighets-registrering (MIIT) som kreves for apper i App Store i Kina; forutsetter kinesisk juridisk enhet + Kina-hostet server.
IDFA (Identifier for Advertisers) — annonse-identifikator; tilgang krever ATT-samtykke.
Interruption level — hvor påtrengende en notifikasjon er: .passive, .active, .timeSensitive (krever entitlement), .critical (krever Apple-godkjent entitlement). Bestemmer hvordan Focus-modus behandler den.
Liquid Glass — Apples translucente, refraktive designspråk introdusert iOS 26 (WWDC 2025); SwiftUI: .glassEffect(), GlassEffectContainer, .interactive.
Live Activities / ActivityKit — sanntids-oppdaterte visninger på låseskjerm + Dynamic Island (iOS 16.1+). Krever NSSupportsLiveActivities = YES i hoved-app-ens Info.plist.
MASVS / MASTG / MASWE — OWASP Mobile Application Security Verification Standard (hva som skal verifiseres; v2.1.0 har 8 kontroll-grupper) / Testing Guide (hvordan teste) / Weakness Enumeration (svakheter).
Privacy manifest (PrivacyInfo.xcprivacy) — plist-fil som deklarerer tracking, tracking-domener, innsamlede datatyper og required-reason-API-kategorier. Påkrevd for App Store-innsending siden 2024-05-01.
Required-reason API — Apple-API-er (file timestamps, system boot time, disk space, active keyboards, user defaults, m.fl.) som krever en deklarert tillatt grunn i privacy-manifestet.
SwiftData — Apples Swift-native persistens-rammeverk (iOS 17+); etterfølger til Core Data for nye apper. @Model, ModelContainer, @Query.
TCA (The Composable Architecture) — tredjeparts SwiftUI-arkitektur basert på reducers/effects; vurderes når app-state er kompleks nok til å rettferdiggjøre det.
TestFlight — Apples beta-distribusjonstjeneste (intern + ekstern testere) via App Store Connect.
UNUserNotificationCenter — iOS-API for lokale og push-notifikasjoner; requestAuthorization, UNNotificationRequest, UNCalendarNotificationTrigger. Lokale notifikasjoner krever ingen Info.plist-nøkkel.
WidgetKit — rammeverk for hjemskjerm-/låseskjerm-widgets og Live Activity-UI; timeline-basert oppdatering med begrenset refresh-budsjett.