app-creator/domain-packs/ios-app/glossary.md
Kjell Tore Guttormsen 2011507ea1 design(app-creator): S6 — forfatt ios-app referanse-domain-pack + start claude-code-plugin-pakke
- 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>
2026-05-12 14:06:54 +02:00

58 lines
4.7 KiB
Markdown

<!-- domain-pack: ios-app · component: glossary · supplementary -->
<!-- Lastes selektivt (fase 1 ved behov, ved oppslag). verified 2026-05-12. -->
# 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.