App Bundle ID — was es ist, App-Identifikator und Registrierung

Autor: IT Sectr Veröffentlicht: 2026-04-17 Lesezeit: 8 Min.

App Bundle ID — ist eine eindeutige Anwendungs-ID, die in den Apple- und Google-Ökosystemen für die Registrierung, Signierung und Verteilung eines Softwareprodukts verwendet wird. Jede App erhält ihre Bundle ID bei der Projekterstellung, und diese ID bleibt während des gesamten Lebenszyklus unverändert. Laut der Apple Developer Documentation wird die Bundle ID für die Bindung von Diensten, Zertifikaten und Bereitstellungsprofilen verwendet.

Wichtige Punkte

  • App Bundle ID — eine globale ID, eindeutig für jede App im Store
  • Format basiert auf Reverse-Domain-Notation: com.company.appname
  • Registrierung erfolgt in App Store Connect und Google Play Console
  • Änderung der Bundle ID nach Veröffentlichung ist ohne Erstellung einer neuen App unmöglich
  • Bindung von Diensten (Push, CloudKit, Firebase) erfolgt über die Bundle ID

Was ist App Bundle ID

Bundle Identifier ist eine Zeichenfolge, die eine App im Betriebssystem und im App Store eindeutig identifiziert. Unter iOS und macOS wird sie Bundle ID genannt, unter Android — Package Name, obwohl beide funktional die gleiche Rolle spielen: Sie gewährleisten die Eindeutigkeit der App auf dem Gerät und im Store.

Zweck der Bundle ID

Das Betriebssystem verwendet die Bundle ID, um Apps auf dem Gerät zu unterscheiden. Zwei Apps mit derselben ID können nicht gleichzeitig installiert werden — das System behandelt sie als dasselbe Produkt. App Stores überprüfen ebenfalls die Eindeutigkeit der Bundle ID bei der Veröffentlichung.

Geschichte und Namensstandards

Apple führte die Bundle ID mit der Veröffentlichung des iOS SDK im Jahr 2008 ein. Das Reverse-Domain-Notationsformat wurde von Java (Package-Naming-Konvention) übernommen, wo es zur Vermeidung von Klassennamenkonflikten verwendet wird. Google übernahm diese Praxis für Android und gewährleistete so Konsistenz in beiden mobilen Ökosystemen.

PlattformFeldnameBeispiel
iOS/macOSBundle Identifiercom.example.myapp
AndroidPackage Namecom.example.myapp
watchOSBundle Identifiercom.example.myapp.watchkit
tvOSBundle Identifiercom.example.myapp.tvos

Wie das Bundle ID-Format funktioniert

Die Bundle ID besteht aus mehreren durch Punkte getrennten Segmenten. Der erste Teil ist der Entwickler- oder Firmenidentifikator (com, org, net). Der zweite ist die Firmendomäne (example, google, apple). Die folgenden Segmente geben den App-Namen und die Plattform an.

Struktur der Bundle ID

Eine typische Bundle ID sieht aus wie com.company.appname. Apple empfiehlt die Verwendung der Reverse-Domain-Notation, um globale Eindeutigkeit zu gewährleisten. Wenn das Unternehmen keine Domäne hat, ist die Verwendung von E-Mail erlaubt: com.example.myapp oder org.example.myapp.

  • Segment 1 — TLD in umgekehrter Reihenfolge: com, org, io, net
  • Segment 2 — Firmen- oder Entwicklerdomäne: google, apple, mycompany
  • Segment 3 — App-Name: maps, mail, notes
  • Zusätzlich — Plattform oder Erweiterung: watchkit, todaywidget

Wildcard Bundle ID

Apple unterstützt Wildcard Bundle ID — eine Identifikatorvorlage mit Sternchen: com.example.*. Diese Vorlage ermöglicht die Verwendung einer App ID für mehrere Apps desselben Unternehmens. Die Wildcard ID ist während der Entwicklung praktisch, wird aber für die Produktion nicht empfohlen, da sie die Nutzung einiger Apple-Dienste einschränkt.

Wildcard-Einschränkungen: Push-Benachrichtigungen, CloudKit, In-App-Käufe und Game Center erfordern eine explizite (explicit) Bundle ID. Bei Verwendung der Vorlage com.example.* sind diese Dienste nicht verfügbar. Verwenden Sie für Produktions-Apps immer eine explizite Bundle ID, um die volle Funktionalität aller Apple-Dienste zu gewährleisten.

Zusätzlich zur Wildcard unterstützt Apple Präfix-Identifikatoren, die dem Entwicklungsteam bei der Registrierung im Apple Developer Program zugewiesen werden. Das Präfix (Team ID) wird automatisch zu allen App IDs und Bereitstellungsprofilen hinzugefügt. Zwei verschiedene Team IDs können dieselbe Bundle ID erstellen, aber auf dem Gerät gelten sie als unterschiedliche Apps.

Registrierung der Bundle ID in Konsolen

Die Registrierung der Bundle ID ist ein obligatorischer Schritt vor der Veröffentlichung einer App. Im Apple-Ökosystem erfolgt die Registrierung im Apple Developer Portal über den Bereich Certificates, Identifiers & Profiles. Bei Google Play wird die Bundle ID beim Erstellen der App in der Entwicklerkonsole angegeben.

Registrierung im Apple Developer Portal

Wählen Sie im Apple Developer-Portal den Bereich Identifiers aus, klicken Sie auf die Schaltfläche Register und geben Sie den App ID-Typ an. Geben Sie den genauen Bundle ID-Namen ein und wählen Sie die erforderlichen Fähigkeiten aus: Push Notifications, CloudKit, Sign in with Apple. Nach der Registrierung steht der Identifikator für die Erstellung von Bereitstellungsprofilen zur Verfügung.

swift
// Überprüfung der Bundle ID im App-Code
let bundleID = Bundle.main.bundleIdentifier
print("Current Bundle ID: \(bundleID ?? "unknown")")

// Überprüfung der Bundle ID für Build-Bedingungen
if bundleID == "com.example.app.production" {
    // Produktionskonfiguration
    Analytics.shared.configure(.production)
}

Registrierung in der Google Play Console

Google Play Console erfordert keine vorherige Registrierung der Bundle ID. Der Identifikator wird in der build.gradle-Datei des App-Moduls angegeben und muss in ganz Google Play eindeutig sein. Nach der Erstellung der App ist es unmöglich, den Package Name zu ändern. Wählen Sie den Identifikator daher sorgfältig aus und überprüfen Sie seine Eindeutigkeit durch eine Suche in Google Play. Google gibt Identifikatoren gelöschter Apps nicht frei, daher bleibt eine einmal vergebene Bundle ID für andere Entwickler unzugänglich.

Bei der Registrierung in App Store Connect müssen Sie eine Bundle ID aus dem vorhandenen Satz registrierter Identifikatoren angeben. Wenn der Identifikator noch nicht im Apple Developer-Portal registriert ist, bietet das System an, ihn automatisch zu erstellen. Nach der Registrierung wird die Bundle ID an das Team gebunden und kann ohne Kontaktaufnahme mit dem Apple-Support nicht auf ein anderes Entwicklerkonto übertragen werden. Jede Bundle ID kann mehrere Bereitstellungsprofile für verschiedene Umgebungen haben: Development, Ad Hoc, App Store.

Bei der Registrierung einer Bundle ID für eine iOS-App mit Erweiterungen muss jede Komponente separat registriert werden. Widget-Erweiterungen, Tastaturen, Notification Service und Watch App haben eigene, vom Hauptidentifikator abgeleitete Identifikatoren. App Store Connect gruppiert sie bei der Erstellung eines App Records, sodass alle Komponenten als eine einzige App veröffentlicht werden können.

Konfiguration der Bundle ID im Xcode-Projekt

Die Konfiguration der Bundle ID in Xcode erfolgt an mehreren Stellen: Info.plist, Build Settings und Signing & Capabilities. Das zentrale Feld ist Bundle Identifier im App-Ziel. Alle Apple-Dienste, von Push-Benachrichtigungen bis CloudKit, sind an diesen Identifikator gebunden. Eine falsch angegebene Bundle ID führt zu Signierfehlern und der Unmöglichkeit, im App Store zu veröffentlichen.

Ändern der Bundle ID in Xcode

xml
<!-- Info.plist — Basis-Bundle ID des Projekts -->
<key>CFBundleIdentifier</key>
<string>$(PRODUCT_BUNDLE_IDENTIFIER)</string>

<!-- Build Settings — Variable PRODUCT_BUNDLE_IDENTIFIER -->
<!-- Debug: com.example.app.dev -->
<!-- Release: com.example.app -->

Xcode verwendet die Variable PRODUCT_BUNDLE_IDENTIFIER in den Build Settings. Für verschiedene Build-Konfigurationen können unterschiedliche Werte festgelegt werden: com.example.app.dev für Debug und com.example.app für Release. Dies ist praktisch, um eine Entwicklungsversion neben der Produktionsversion auf demselben Gerät zu Testzwecken zu installieren.

Multi-Target-Konfiguration

Wenn die App Erweiterungen (Notification Service, Widget, Watch App) hat, erhält jede Erweiterung ihre eigene Bundle ID mit einem Suffix. Haupt-App: com.example.app. Widget-Erweiterung: com.example.app.widget. Watch App: com.example.app.watchkit. Jeder Identifikator wird separat im Apple Developer Portal registriert und erhält ein eigenes Bereitstellungsprofil. Xcode verwaltet diese Abhängigkeiten während des Builds automatisch.

Unterschiede zwischen App Bundle ID und Package Name

App Bundle ID (Apple) und Package Name (Google) sind ähnliche Entitäten mit demselben Zweck, aber unterschiedlichen Nutzungsregeln in den iOS- und Android-Ökosystemen. Beide Identifikatoren verwenden die Reverse-Domain-Notation und können nach der Veröffentlichung in offiziellen App Stores nicht geändert werden.

Funktionale Unterschiede

Im Apple-Ökosystem ist die Bundle ID an Bereitstellungsprofile und Zertifikate gebunden. Beim Wechsel des Entwicklungsteams kann die Bundle ID über App Store Connect zwischen Konten übertragen werden. Unter Android ist der Package Name streng an die App in Google Play gebunden und kann nicht zwischen Entwicklerkonten übertragen werden.

MerkmaliOS Bundle IDAndroid Package Name
Maximale LängeUnbegrenzt150 Zeichen
SegmenttrennerPunkt (.)Punkt (.)
Erlaubte ZeichenA-Z, a-z, 0-9, Punkt, BindestrichA-Z, a-z, 0-9, Punkt, Unterstrich
WildcardUnterstützt (*)Nicht unterstützt
Verwendung im CodeBundle.main.bundleIdentifierBuildConfig.APPLICATION_ID

Trotz der Unterschiede spielen beide Identifikatoren eine entscheidende Rolle: Ohne sie ist es unmöglich, eine App in einem offiziellen Store zu veröffentlichen. Empfehlung für plattformübergreifende Projekte — verwenden Sie denselben Identifikator in den iOS- und Android-Versionen, um die Integration mit Firebase, Analytics und anderen Diensten zu vereinfachen. Dies vereinfacht auch die Navigation für das Entwicklungsteam: Ein Identifikator für beide Projekte reduziert Verwirrung bei der Einrichtung von CI/CD und der Umgebungskonfiguration.

Bei der Entwicklung mit Flutter oder React Native ist ein einheitlicher Identifikator besonders wichtig, da die Codebasis gemeinsam genutzt wird und viele automatisierte Build-Tools denselben Paketnamen für beide Plattformen erwarten. Ein Firebase-Projekt wird ebenfalls an einen einzigen Identifikator für iOS und Android gebunden, was die Einrichtung von Analysen und Absturzberichten vereinfacht.

Häufig gestellte Fragen

Kann die Bundle ID nach der Veröffentlichung der App geändert werden?

Die Bundle ID zu ändern nach der Veröffentlichung im App Store oder Google Play ist unmöglich. Das System behandelt die neue ID als eine völlig andere App. Um ein vorhandenes Produkt zu aktualisieren, muss die Bundle ID während des gesamten App-Lebenszyklus unverändert bleiben.

Was passiert, wenn zwei Apps dieselbe Bundle ID haben?

Ein iOS- oder Android-Gerät erlaubt nicht die Installation einer zweiten App mit derselben ID über der ersten. Das System zeigt einen Fehler an und schlägt vor, die vorhandene App zu löschen. In den Stores wird die Veröffentlichung mit einer doppelten Bundle ID ebenfalls blockiert.

Wie wähle ich die Bundle ID für ein neues Projekt richtig aus?

Verwenden Sie die Reverse-Domain-Notation Ihres Unternehmens: com.companyname.appname. Vermeiden Sie Bindestriche und Sonderzeichen. Wenn die App Erweiterungen hat, fügen Sie durch Punkte getrennte Suffixe hinzu. Stellen Sie sicher, dass die ID eindeutig und nicht von einem anderen Entwickler vergeben ist.

Benötigt jede App-Erweiterung eine separate Bundle ID?

Ja, jede Erweiterung — Widget, Watch App, Notification Service — benötigt ihre eigene Bundle ID. Die Identifikatoren bilden eine Hierarchie: com.example.app als Basis, com.example.app.widget für das Widget, com.example.app.watchkit für die Watch. Alle werden separat im Apple Developer Portal registriert und teilen sich eine gemeinsame App ID mit der Haupt-App.

Was ist der Unterschied zwischen Bundle ID und App ID im Apple Developer-Portal?

Bundle ID ist eine Identifikatorzeichenfolge im App-Code. App ID ist ein Objekt im Apple Developer-Portal, das eine Bundle ID mit einer Reihe aktivierter Dienste (Capabilities) kombiniert. Die App ID wird auf Basis der Bundle ID erstellt und zur Generierung von Bereitstellungsprofilen verwendet.

Zusammenfassung

  • App Bundle ID — eine eindeutige App-ID in den iOS- und Android-Ökosystemen
  • Format basiert auf Reverse-Domain-Notation: com.company.appname
  • Änderung der Bundle ID nach Veröffentlichung ist ohne Erstellung einer neuen App im Store unmöglich
  • Wildcard Bundle ID com.example.* ist praktisch für die Entwicklung, aber nicht kompatibel mit Push, CloudKit und In-App-Käufen
  • Erweiterungen erhalten eigene Bundle IDs mit punktgetrennten Suffixen
  • Registrierung erfolgt im Apple Developer Portal bzw. in der Google Play Console
  • Empfehlung — wählen Sie den Identifikator mit Bedacht, überprüfen Sie die Eindeutigkeit vor der Veröffentlichung

Wir entwickeln eine mobile Applikation schlüsselfertig

IT Sectr entwickelt seit 2017 iOS- und Android-Apps für Startups und Unternehmen. Wir beraten Sie und schlagen die beste Lösung vor.

Projekt besprechen

Lesen Sie auch