26/10/2024
At udvikle en iOS-app er en spændende rejse, men før din kode kan se dagens lys på en iPhone eller iPad, er der nogle vigtige opsætningstrin, der skal være på plads. Disse trin sikrer, at Apple-enheder kan verificere, at din app kommer fra en betroet kilde, og at den er klar til at blive installeret og distribueret. I denne artikel vil vi grundigt gennemgå, hvordan du opsætter dit udviklingscertifikat og din klargøringsprofil – to essentielle komponenter, som er afgørende for at publicere din app. Heldigvis har Apple strømlinet opsætningsprocessen, så du ikke engang behøver at åbne disse filer. Når de er konfigureret, klarer Xcode resten.

Lad os dykke ned i de nødvendige trin for at få din udviklerkonto og dine app-relaterede indstillinger korrekt konfigureret.
Hvad er en Udviklerkonto, og hvorfor har du brug for den?
En Apple udviklerkonto er din port til iOS-udviklingsøkosystemet. Uden den kan du ikke bygge apps til reelle enheder, distribuere dem via TestFlight eller publicere dem i App Store. Kontoen giver dig adgang til udviklerværktøjer, dokumentation, betaversioner af iOS, og ikke mindst muligheden for at generere de digitale signaturer – certifikater og klargøringsprofiler – der er nødvendige for at din app kan køre på Apples enheder.
Apples sikkerhedsmodel kræver, at alle apps, der installeres på enheder, er signeret med et godkendt certifikat. Dette sikrer brugere mod skadelig software og bekræfter appens oprindelse. Din udviklerkonto er det centrale knudepunkt, hvorfra disse digitale identiteter administreres.
Forståelse af Nøglebegreber: Certifikater og Klargøringsprofiler
Før vi går i gang med den praktiske opsætning, er det vigtigt at forstå de grundlæggende begreber: certifikater og klargøringsprofiler. De arbejder hånd i hånd, men tjener forskellige formål.
Udviklingscertifikater
Et udviklingscertifikat er, som navnet antyder, beregnet til udviklingsfasen. Det giver dig tilladelse til at bygge og køre din app på dine egne registrerede test-enheder, typisk når du debugger via USB til din computer. Det er en digital identitet, der bekræfter, at din app kommer fra dig, udvikleren. Hver udvikler kan have et udviklingscertifikat, og det er personligt bundet til din Apple-id som udvikler.
Distributionscertifikater
Distributionscertifikater bruges, når din app er klar til at blive delt med andre, enten til test uden for App Store (Ad-Hoc) eller til officiel udgivelse via App Store. Der er to primære typer:
- Ad-Hoc: Bruges til at distribuere din app til et begrænset antal registrerede test-enheder uden om App Store. Dette er nyttigt til tidlige beta-tests, men i dag bruges TestFlight oftere til dette formål.
- App Store: Dette er det certifikat, du bruger, når du vil uploade din app til App Store. Det giver Apple tilladelse til at distribuere din app globalt til alle brugere.
Klargøringsprofiler – Broen mellem App, Enhed og Certifikat
En klargøringsprofil (også kendt som en Provisioning Profile) er en manifestfil, der knytter dit udviklings- eller distributionscertifikat sammen med en specifik Bundle-ID (din apps unikke identifikator) og, for udviklings- og Ad-Hoc-profiler, en liste over godkendte test-enheder. I bund og grund fortæller en klargøringsprofil Apples enheder: 'Denne app (identificeret af Bundle-ID'et) er signeret af denne udvikler (identificeret af certifikatet) og må køre på disse specifikke enheder (hvis det er en udviklings- eller Ad-Hoc-profil).' For App Store-profiler er der ingen enhedsbegrænsning, da appen er beregnet til offentlig distribution.
Her er en simpel sammenligning for at klargøre forskellen:
| Begreb | Formål | Forbindelse |
|---|---|---|
| Certifikat | Bekræfter din identitet som udvikler over for Apple. | Giver dig tilladelse til at bygge apps til specifikke formål (udvikling, distribution). |
| Klargøringsprofil | Definerer hvilke apps, hvilke udviklere og hvilke enheder der må installere en specifik app. | Er bundet til et specifikt certifikat og en Bundle-ID. Nødvendig for at køre apps på enheder. |
Trin 1: Tilknyt din Udviklerkonto til Xcode
For at komme i gang skal du tilføje dine Apple Developer-legitimationsoplysninger til Xcode. Denne proces er afgørende, da den giver Xcode adgang til din udviklerkonto og muligheden for automatisk at administrere dine certifikater og profiler.
- Åbn Xcode.
- Gå til Xcode-menuen øverst på skærmen, og vælg derefter 'Preferences...' (Præferencer) eller brug tastaturgenvejen
⌘,. - I vinduet 'Preferences' skal du klikke på fanen 'Accounts' (Konti).
- Nederst til venstre i dette vindue finder du et lille '+' tegn. Klik på det.
- Vælg 'Apple ID' fra den pop-up-menu, der vises, og klik derefter på 'Continue' (Fortsæt).
- Du vil nu blive bedt om at indtaste dit Apple-id og adgangskode. Det er absolut afgørende, at du bruger det Apple-id, der er knyttet til din betalte Apple Udviklerkonto. Hvis du bruger et forkert Apple-id, vil Xcode ikke kunne oprette de nødvendige filer.
- Efter vellykket login vil dit Apple-id nu blive vist under fanen 'Accounts' i Xcode-præferencerne, typisk med din 'Team' (Hold) information ved siden af.
Trin 2: Oprettelse af din Apps Unikke Identitet: Bundle-ID'et
Efter at have logget ind skal du opsætte nogle oplysninger, der giver Apple mulighed for at identificere din app. Den vigtigste af disse er Bundle-ID'et, som er en unik identifikator for din app på tværs af Apples økosystem. Ingen to apps kan have det samme Bundle-ID. Du kan tildele Bundle-ID'et direkte fra Xcode.
- I Xcodes 'Project navigator' (projektnavigator), som typisk er sidepanelet til venstre, skal du klikke på den yderste fil. Dette er typisk en blå ikon 'Project'-fil, navngivet efter dit projekt.
- I hovedvinduet vil du nu se projektindstillingerne. Sørg for, at din app er valgt under sektionen 'TARGETS' (Mål).
- Under 'TARGETS' skal du vælge fanen 'General' (Generelt).
- I sektionen 'Identity' (Identitet) finder du feltet 'Bundle Identifier'. Her kan du redigere det direkte.
- Det typiske Bundle-ID navngives efter din app og din organisation ved hjælp af Reverse Domain Name-formatet:
com.{din-organisations-identifikator}.{din-app-identifikator}. For eksempel, hvis din organisation hedder 'Star Rockers Industries' og din app hedder 'Pink Rocket', ville Bundle-ID'et værecom.starrockers.pinkrocket. Vælg et unikt og beskrivende navn.
Trin 3: Automatisk Generering af Udviklingscertifikat
Når dit Bundle-ID er tilføjet, kan Xcode generere et udviklingscertifikat for dig. Dette er den automatiserede proces, der gør det nemt at komme i gang.
- Med din app stadig valgt under sektionen 'TARGETS' i Xcode, skal du vælge fanen 'Signing & Capabilities' (Signering og Funktioner).
- Klik på 'Team'-vælgeren, og vælg dit Apple-id fra listen. Dette er det Apple-id, du netop har tilføjet i Trin 1.
- Sørg for, at indstillingen 'Automatically manage signing' (Administrer signering automatisk) er markeret. Dette er nøglen til Xcodes automatiske håndtering af certifikater og profiler.
- Kontroller, at dit navn (eller dit teamnavn) vises korrekt i sektionen 'Team'.
- Når disse indstillinger er indtastet korrekt, bør du se nogle indlæsningsindikatorer. Dette betyder, at Xcode kommunikerer med Apple Developer Portal for at oprette et certifikat for dig. Hvis du ikke ser fejltekst, efter at indlæsningsindikatorerne forsvinder, betyder det, at certifikatet er oprettet og installeret korrekt. Xcode håndterer denne proces fuldautomatisk!
Trin 4: Automatisk Oprettelse af Klargøringsprofil
For at kunne køre din app på en personlig enhed (ud over simulatoren) og senere bygge den til App Store, skal du også have en klargøringsprofil. På dette tidspunkt i gennemgangen kan profilen også oprettes automatisk fra Xcode.
Apple skal tilføje mindst én enhed til din konto for at kunne oprette en profil, der tillader kørsel på en fysisk enhed. Dette gøres nemmest ved at tilslutte en iOS-enhed (f.eks. din iPhone) til din computer via USB, og derefter vælge den som din 'run destination' i Xcode (den lille drop-down menu øverst til venstre, typisk ved siden af 'Play'-knappen). Når du vælger en fysisk enhed for første gang, vil Xcode automatisk registrere den med din udviklerkonto og inkludere den i din klargøringsprofil. Denne proces vil også ofte løse eventuelle potentielle fejl, du måtte have stødt på i det forrige trin, da den tvinger Xcode til at bekræfte alle signaturindstillinger.

En Dybdegående Forståelse: Certifikater og Profiler i Praksis
For at give en endnu dybere forståelse af, hvordan certifikater og profiler fungerer sammen, lad os gennemgå et praktisk eksempel, der illustrerer, hvorfor du muligvis skal oprette nye profiler over tid.
Eksempel 1: Start med iPhone-udvikling
- Du køber en iPhone, din første test-enhed.
- Du følger Trin 1-4 ovenfor, og Xcode opretter automatisk dit udviklingscertifikat og en klargøringsprofil, der specifikt tillader din app at køre på denne ene iPhone. Denne profil er bundet til dit udviklingscertifikat og din apps Bundle-ID.
- Du kan nu køre og debugge din app på din iPhone.
Eksempel 2: Tilføjelse af en iPad
Efter et stykke tid beslutter du dig for, at du også vil teste din app på en iPad.
- Du køber en iPad.
- Du tilslutter iPad'en til din computer og vælger den som din 'run destination' i Xcode.
- Xcode vil automatisk registrere iPad'en med din udviklerkonto. Fordi din eksisterende klargøringsprofil kun inkluderede din iPhone, vil Xcode oprette en ny klargøringsprofil, der nu inkluderer både din iPhone og din iPad. Du kan ikke 'redigere' en eksisterende profil for at tilføje enheder; en ny oprettes altid med de opdaterede enhedslister. Denne nye profil vil stadig være bundet til dit eksisterende udviklingscertifikat og din apps Bundle-ID.
- Du kan nu køre og debugge din app på både din iPhone og din iPad.
Eksempel 3: Forberedelse til App Store-distribution
Når din app er færdigudviklet og klar til at blive udgivet i App Store.
- Du vil skifte fra udvikling til distribution. I Apple Developer Portal (som Xcode typisk administrerer i baggrunden) skal du oprette et distributionscertifikat af typen 'App Store'.
- Derefter skal du oprette en ny klargøringsprofil specifikt til App Store-distribution. Denne profil vil være bundet til dit nye App Store-distributionscertifikat og din apps Bundle-ID. Da App Store-profiler er beregnet til offentlig distribution, vil de ikke bede dig om at specificere enheder.
- Når du bygger din app til App Store i Xcode, vil du vælge denne nye App Store klargøringsprofil for at signere din app korrekt.
Denne manuelle gennemgang af processen (selvom Xcode ofte automatiserer mange af trinene) hjælper med at forstå de underliggende principper for, hvordan certifikater og profiler interagerer for at give din app tilladelse til at køre på forskellige enheder og til forskellige formål.
Ofte Stillede Spørgsmål (FAQ)
Hvad er et Bundle-ID?
Et Bundle-ID (også kaldet Bundle Identifier) er en unik streng, der identificerer din app på tværs af Apple-platformen. Det er som din apps fingeraftryk. Ingen to apps i App Store kan have det samme Bundle-ID. Formatet er typisk omvendt domænenavn, f.eks. com.ditfirma.dinappnavn.
Hvorfor skal jeg have et certifikat?
Et certifikat er en digital signatur, der bekræfter din identitet som udvikler over for Apples sikkerhedssystemer. Det sikrer, at kun godkendte udviklere kan bygge og distribuere apps, og det hjælper med at beskytte brugere mod potentielt skadelig software. Uden et gyldigt certifikat kan din app ikke køre på en fysisk iOS-enhed eller uploades til App Store.
Kan jeg bruge ét certifikat til flere apps?
Ja, et udviklingscertifikat (Development Certificate) og et distributionscertifikat (Distribution Certificate) er knyttet til din udviklerkonto, ikke til en specifik app. Du kan bruge det samme udviklingscertifikat til at signere og teste flere forskellige apps, så længe de alle tilhører den samme udviklerkonto.
Hvad er forskellen mellem udviklings- og distributionscertifikater?
Udviklingscertifikater bruges til at bygge og køre apps på dine egne registrerede test-enheder under udviklings- og debugging-fasen. Distributionscertifikater bruges til at bygge apps, der skal distribueres til et bredere publikum, enten via Ad-Hoc-distribution (begrænset test) eller App Store (offentlig udgivelse).
Hvorfor skal jeg tilslutte en fysisk enhed?
Når du bruger 'Automatically manage signing', skal Xcode registrere mindst én fysisk enhed med din udviklerkonto for at kunne oprette en klargøringsprofil, der tillader din app at køre på reelle enheder. Ved at tilslutte en enhed og vælge den som din 'run destination', initierer du denne registrering, og Xcode kan derefter fuldføre opsætningen af din profil.
Kan jeg redigere en eksisterende klargøringsprofil for at tilføje nye enheder?
Nej, du kan ikke direkte redigere en eksisterende klargøringsprofil for at tilføje eller fjerne enheder. Hvis du tilføjer en ny test-enhed til din udviklerkonto, vil Xcode (med 'Automatically manage signing' aktiveret) automatisk oprette en ny klargøringsprofil, der inkluderer den nye enhed samt alle tidligere registrerede enheder. Den gamle profil bliver deaktiveret eller erstattet.
Hvad hvis jeg støder på fejl?
De mest almindelige fejl ved signering er relateret til forkert Apple-id (ikke knyttet til en udviklerkonto), manglende godkendelse af Apples vilkår og betingelser, eller problemer med internetforbindelsen til Apple Developer Portal. Sørg for at dit Apple-id er korrekt, at du har accepteret alle de seneste aftaler i Developer Portal, og prøv at genstarte Xcode eller din computer. I de fleste tilfælde er Xcodes automatiske signering ret robust.
Afsluttende Bemærkninger
Med ingen fejl på 'Signing and Capabilities'-siden har du nu dit udviklingscertifikat og din klargøringsprofil på plads. Tillykke! Du har taget et vigtigt skridt mod at gøre din iOS-app tilgængelig for verden. Disse indstillinger er grundlaget for al videre udvikling og distribution. I den næste fase kan du begynde at forberede din kode til en fil, der kan downloades som din app, og potentielt uploade den til TestFlight eller App Store. God fornøjelse med din udvikling!
Hvis du vil læse andre artikler, der ligner Opsætning af din iOS Udviklerkonto: Trin for Trin, kan du besøge kategorien Teknologi.
