Background Modes in iOS — was ist das, welche Modi gibt es und Konfiguration

Autor: IT Sectr Veröffentlicht: 2026-03-27 Lesezeit: 9 Min.

Background Modes sind eine Reihe deklarierbarer iOS-Funktionen, die es einer App ermöglichen, nach dem Übergang in den Hintergrund weiterhin Code auszuführen. Jeder Modus entspricht einem bestimmten Aufgabentyp: Audio, Geolokalisierung, VoIP, Bluetooth, Fetch und Processing. Laut Apple, 2026 ist die unsachgemäße Verwendung von Background Modes einer der häufigen Gründe für die Ablehnung von Apps im App Store Review.

Wichtige Punkte

  • Background Modes — eine Reihe von iOS-Funktionen zur legitimen Codeausführung im Hintergrund.
  • Audio-Modus — Wiedergabe von Musik, Podcasts, Hörbüchern im Hintergrund mit Steuerung über das Kontrollzentrum.
  • Geolokalisierung — Standortverfolgung im Hintergrund für Navigation und Fitness-Tracker.
  • Bluetooth — Arbeit mit BLE-Geräten im Hintergrund: Fitnessbänder, Sensoren, Peripheriegeräte.
  • Apple-Prüfung — unsachgemäße Verwendung von Modi führt zur Ablehnung der App im App Store.

Was sind Background Modes in iOS?

Background Modes sind Xcode-Projektfunktionen, die die Absicht der App deklarieren, bestimmte Arten von Operationen im Hintergrund auszuführen. Im Gegensatz zu Android, wo eine App jeden Service im Hintergrund starten kann, erfordert iOS eine explizite Deklaration des Modus in Info.plist. Jeder Modus hat strenge Nutzungsregeln und wird von Apple während des Reviews geprüft.

Wie Background Modes funktionieren

Wenn eine App in den Hintergrund wechselt, setzt iOS sie innerhalb von 3–5 Sekunden aus. Wenn die App einen Background Mode deklariert und die entsprechende API aktiv nutzt (z. B. AVAudioSession für Audio), versetzt das System sie in einen speziellen Ausführungsmodus. Die App bleibt im Speicher und kann Code ausführen, der durch den Modustyp eingeschränkt ist.

Vollständige Liste der verfügbaren Modi

iOS unterstützt die folgenden Background Modes: Audio, Location, VoIP, Bluetooth LE (BLE-Zubehör), Background Fetch (periodische Aktualisierungen), Background Processing (langlaufende Aufgaben), External Accessory Communication, Push to Talk (PTT) und HealthKit. Jeder Modus erfordert eine Begründung in der App-Beschreibung.

ModusInfo.plist-SchlüsselZweckiOS-Version
AudioaudioHintergrundaudio, AirPlay4.0+
LocationlocationStandortverfolgung4.0+
VoIPvoipVoIP-Push-Benachrichtigungen4.0+
BLEbluetooth-centralArbeit mit BLE-Geräten7.0+
FetchfetchPeriodischer Datendownload7.0+
ProcessingprocessingLanglaufende Hintergrundaufgaben13.0+
Push to Talkpush-to-talkPush-to-Talk-Sprache16.0+

Audio-Modus (Audio, AirPlay und Picture in Picture)

Audio Background Mode ist der häufigste Modus, der von Musikplayern, Podcast-Apps und Audiodiensten verwendet wird. Die App kann die Audiowiedergabe fortsetzen, über das Kontrollzentrum gesteuert werden und auf dem Sperrbildschirm erscheinen. Zur Aktivierung reicht es aus, AVAudioSession mit der Kategorie .playback zu konfigurieren.

Konfiguration der Audiositzung

Damit Audio im Hintergrund funktioniert, muss AVAudioSession konfiguriert und aktiviert werden. Die Kategorie .playback teilt dem System mit, dass die App Audio wiedergibt und im Hintergrund aktiv bleiben soll. Ohne diese Konfiguration stoppt die Audioausgabe 5–10 Sekunden nach dem Minimieren der App.

swift
import AVFoundation

func configureAudioSession() {
    let session = AVAudioSession.sharedInstance()
    do {
        try session.setCategory(
            .playback,
            mode: .default,
            options: []
        )
        try session.setActive(true)
    } catch {
        print("Audio-Sitzungsfehler: \(error)")
    }
}

Steuerung der Wiedergabe über das Kontrollzentrum

Für die Integration mit Kontrollzentrum und Sperrbildschirm muss MPRemoteCommandCenter konfiguriert werden. Es verarbeitet die Befehle Play, Pause, Nächster und Vorheriger Titel. Außerdem muss MPNowPlayingInfoProperty aktualisiert werden, um Metadaten anzuzeigen: Titelname, Künstler, Cover und Wiedergabefortschritt.

Picture in Picture für Video

Ab iOS 14 unterstützt der Audio Background Mode auch Picture in Picture für Video. Die App kann nach dem Minimieren weiterhin Video in einem schwebenden Fenster anzeigen. Zur Aktivierung verwenden Sie AVPictureInPictureController mit AVPlayerLayer. Dieser Modus funktioniert nur, wenn die App eine Audiospur wiedergibt.

Geolokalisierung (Standortaktualisierungen)

Location Background Mode ermöglicht der App, Standortaktualisierungen im Hintergrund zu empfangen. Er wird in Navigations-Apps, Fitness-Trackern, Liefer-Apps und sozialen Netzwerken verwendet. Ohne diesen Modus erhält die App den Standort nur einmal beim Wechsel in den Hintergrund, danach werden die Aktualisierungen eingestellt.

Arten der Standortverfolgung

CLLocationManager unterstützt mehrere Verfolgungsstrategien: signifikante Standortänderungen, Standard-Standortverfolgung und Regionsüberwachung. Für die Hintergrundarbeit mit maximaler Genauigkeit verwenden Sie allowsBackgroundLocationUpdates = true und pausesLocationUpdatesAutomatically = false.

Energieeffizienz und Genauigkeit

Die kontinuierliche Standortverfolgung im Hintergrund ist eines der energieintensivsten Szenarien. iOS passt automatisch die Aktualisierungshäufigkeit an die Bewegungsgeschwindigkeit an: beim Gehen alle 10–30 Sekunden, beim Autofahren alle 1–5 Sekunden. Für die Navigation verwenden Sie desiredAccuracy = kCLLocationAccuracyBestForNavigation.

swift
let locationManager = CLLocationManager()
locationManager.requestAlwaysAuthorization()
locationManager.allowsBackgroundLocationUpdates = true
locationManager.pausesLocationUpdatesAutomatically = false
locationManager.desiredAccuracy = kCLLocationAccuracyBest
locationManager.activityType = .fitness
locationManager.startUpdatingLocation()

Signifikante Standortänderungen

Der significant-change location-Modus funktioniert ohne Location Background Mode — das System weckt die App nur bei signifikanten Koordinatenänderungen (in der Regel 500 m oder mehr). Er benötigt kein konstantes GPS, was den Akku schont. Geeignet für Wetter-Apps, die Daten aktualisieren, wenn sich der Benutzer bewegt.

Bluetooth-Modus (LE-Zubehör)

Bluetooth LE Background Mode ermöglicht der App die Interaktion mit BLE-Geräten im Hintergrund. Er wird von Fitnessbändern, medizinischen Sensoren, Smart-Home-Geräten und Beacon-Navigation verwendet. Der Modus ist in zwei Untertypen unterteilt: bluetooth-central (die App verbindet sich mit Geräten) und bluetooth-peripheral (die App fungiert als Gerät).

Arbeiten im Central-Modus

Eine als Central agierende App kann BLE-Geräte im Hintergrund scannen und sich mit ihnen verbinden. Geben Sie dazu bluetooth-central in Background Modes an und rufen Sie CBCentralManager.scanForPeripherals mit der Option CBCentralManagerScanOptionAllowDuplicatesKey auf. Im Hintergrund läuft der Scan mit reduzierter Frequenz — das System kann die Erkennung zur Energieeinsparung verzögern.

Arbeiten im Peripheral-Modus

Eine als Peripheral agierende App kann Dienste ankündigen und auf Anfragen anderer Geräte antworten. Der bluetooth-peripheral-Modus ermöglicht der App, auch im Hintergrund für andere BLE-Geräte sichtbar zu bleiben. Er wird in HealthKit-Apps und IoT-Lösungen verwendet.

Beacon- und Regionsüberwachung

Die iBeacon-Überwachung funktioniert im Hintergrund ohne zusätzliche Berechtigungen — das System selbst verfolgt das Betreten und Verlassen von Beacon-Regionen. Zum Scannen des Beacon-Inhalts (Proximity-UUID, Major, Minor) wird jedoch eine Bluetooth-Berechtigung und der bluetooth-central Background Mode benötigt. Verwenden Sie CLLocationManager mit CLBeaconRegion für die Überwachung.

VoIP und PushKit für Kommunikations-Apps

VoIP Background Mode ist für Sprachkommunikations-Apps (Skype, Zoom, WhatsApp) konzipiert. Dieser Modus ermöglicht der App, für den Empfang eingehender Anrufe mit dem Server verbunden zu bleiben. Ab iOS 8 wird für VoIP PushKit verwendet — ein Framework, das Push-Benachrichtigungen vom VoIP-Server ohne Beteiligung von APNs verarbeitet.

PushKit für eingehende Anrufe

PushKit ist der einzige Mechanismus, der die Zustellung von VoIP-Benachrichtigungen an das Gerät garantiert. Beim Empfang einer PushKit-Benachrichtigung weckt das System die App, selbst wenn sie beendet wurde. Die App muss innerhalb von 30 Sekunden eine Verbindung zum Server herstellen und eine lokale Benachrichtigung über den eingehenden Anruf anzeigen.

swift
import PushKit

class VoIPHandler: NSObject, PKPushRegistryDelegate {
    func pushRegistry(
        _ registry: PKPushRegistry,
        didReceiveIncomingPushWith payload: PKPushPayload,
        for type: PKPushType,
        completion: @escaping () -> Void
    ) {
        let caller = payload.dictionaryPayload["caller"] as! String
        reportIncomingCall(from: caller)
        completion()
    }
}

PushKit-Nutzungsregeln

PushKit darf nicht für gewöhnliche Benachrichtigungen verwendet werden — nur für VoIP, watchOS-Kommunikation und Dateianbieter. Apple überprüft dies während des Reviews. Bei missbräuchlicher Verwendung wird die App abgelehnt. Ab iOS 13 liefert PushKit nur die Benachrichtigung — der Aufruf von CXProvider (CallKit) zur Anzeige des Anrufbildschirms ist obligatorisch.

Fetch- und Processing-Modi

Background Fetch und Background Processing sind Modi für Hintergrundaktualisierungen und langlaufende Aufgaben. Fetch ist für kurze periodische Aktualisierungen (bis zu 30 s), Processing für langlaufende Aufgaben (bis zu 10 min) mit Bedingungen (Wi-Fi, Laden). Processing ist nur ab iOS 13+ verfügbar.

Background Fetch — schnelle Aktualisierungen

Der Fetch-Modus ermöglicht dem System, die App periodisch zu wecken, um neue Inhalte herunterzuladen. Das System analysiert das Benutzerverhalten und wählt den optimalen Zeitpunkt. Die App muss den Completion Handler innerhalb von 30 Sekunden aufrufen. Fetch eignet sich für Nachrichten-Apps, Social-Media-Feeds und Wetter.

Background Processing — langlaufende Aufgaben

BGProcessingTask ist für Aufgaben konzipiert, die ohne Benutzereingriff ausgeführt werden können: Cache-Bereinigung, Synchronisation großer Datenbanken, Verarbeitung von Mediendateien. Das System startet die Aufgabe nur unter günstigen Bedingungen — Gerät wird geladen, mit Wi-Fi verbunden, nicht im Stromsparmodus. Bis zu 10 Minuten verfügbar.

Planung und Anforderungen

Für BGProcessingTask müssen requiresExternalPower und requiresNetworkConnectivity angegeben werden. Das System kann die Ausführung auf unbestimmte Zeit verschieben, wenn die Bedingungen nicht erfüllt sind. Im Gegensatz zu BGAppRefreshTask, das mindestens einmal täglich ausgeführt werden muss, kann Processing wochenlang nicht ausgeführt werden, wenn das Gerät selten geladen wird.

App Store Review-Richtlinien für Background Modes

Apple überprüft die Verwendung von Background Modes während des App Reviews streng. Die Hauptregel: Jeder aktivierte Modus muss durch die Funktionalität der App begründet sein. Wenn eine App den Location Mode deklariert, aber keine Geolokalisierung verwendet, wird sie mit der Aufforderung zur Entfernung der Funktion abgelehnt.

Häufige Ablehnungsgründe

Die häufigsten Verstöße: Location Mode ohne explizite Notwendigkeit (die App fordert „Immer“-Zugriff zum Anzeigen von Werbung an), Audio Mode ohne Hintergrundaudiowiedergabe, VoIP ohne PushKit, BLE Mode ohne Bluetooth-Geräte. Apple kann die App sogar in der Update-Phase ablehnen, wenn der Modus nicht mehr verwendet wird.

Beschreibung in den Review-Hinweisen

Geben Sie beim Einreichen zur Überprüfung in den Hinweisen eine spezifische Begründung für jeden Modus an. Zum Beispiel: „Der Location Background Mode wird verwendet, um die Route des Benutzers in der Fitnessfunktion zu verfolgen.“ Ohne Erläuterung kann der Prüfer die App ablehnen. Für vertrauliche Funktionen (VoIP) kann Apple ein Testkonto anfordern.

Empfehlungen zur Minimierung von Modi

Verwenden Sie den minimal notwendigen Satz von Modi. Wenn Ihre App einmal pro Stunde Hintergrunddaten herunterladen muss — aktivieren Sie nicht den Location Mode, sondern verwenden Sie Fetch oder BGAppRefreshTask. Zusätzliche Modi führen nicht nur zur Ablehnung, sondern hinterlassen auch einen negativen Eindruck: Der Benutzer sieht in den Einstellungen, dass die App Geolokalisierung im Hintergrund verwendet.

Häufig gestellte Fragen

Wie viele Background Modes können in einer App aktiviert werden?

Es gibt keine Mengenbegrenzung, aber jeder Modus muss durch die Funktionalität der App begründet sein. Das Aktivieren aller Modi ohne Notwendigkeit ist ein garantierter Ablehnungsgrund während des Reviews. Eine praktische Grenze sind 2–3 Modi pro App, sonst sieht der Benutzer viele Berechtigungsanfragen.

Wie überprüfe ich, ob ein Background Mode aktiv ist?

Verwenden Sie UIApplication.shared.applicationState — die App kann überprüfen, ob sie sich im Hintergrund befindet (state == .background). Sie können auch die Benachrichtigungen UIApplication.didEnterBackgroundNotification und willEnterForegroundNotification beobachten, um das Verhalten umzuschalten.

Was ist der Unterschied zwischen Audio- und AirPlay Background Mode?

Audio — Tonwiedergabe über Lautsprecher oder Kopfhörer. AirPlay — Streaming von Audio und Video an Apple TV und andere AirPlay-Geräte. In der Praxis deckt der Audio-Modus beide Szenarien ab, da AirPlay die Audiositzung verwendet. Ein separater AirPlay-Modus ist seit iOS 7+ nicht erforderlich.

Kann ich den Hintergrundstandort nur bei geöffneter App verwenden?

Ja, verwenden Sie dafür requestWhenInUseAuthorization() anstelle von requestAlwaysAuthorization(). Die App erhält den Standort nur im Vordergrund. Wenn eine kurze Hintergrundverfolgung benötigt wird, rufen Sie startUpdatingLocation() auf und stoppen Sie es in willResignActive.

Wie wirken sich Background Modes auf den Akku aus?

Jeder Modus erhöht den Stromverbrauch. Location Mode ist der anspruchsvollste und kann die Akkulaufzeit bei kontinuierlicher Verfolgung um 30–50% reduzieren. Audio-Modus ist moderat (15–20%). Fetch und Processing sind minimal (2–5%). BLE-Modus ist niedrig (5–10%) dank der Energieeffizienz von Bluetooth LE.

Zusammenfassung

  • Background Modes — deklarierbare iOS-Funktionen, die einer App die legitime Codeausführung im Hintergrund ermöglichen.
  • Audio Mode — der häufigste, zum Abspielen von Musik, Podcasts und Video über AVAudioSession mit der Kategorie .playback.
  • Location Mode — für Navigation und Fitness, der energieintensivste, erfordert requestAlwaysAuthorization und allowsBackgroundLocationUpdates.
  • BLE Mode — Arbeit mit Bluetooth-Geräten im Hintergrund über CBCentralManager mit Hintergrundscan.
  • VoIP und PushKit — für Kommunikations-Apps, garantiert die Zustellung eingehender Anrufe über PKPushRegistry.
  • Fetch und Processing — kurze und lange Hintergrundaufgaben mit unterschiedlichen Ausführungsbedingungen und Zeitlimits.
  • Apple überprüft die Begründung jedes Modus streng — unsachgemäße Verwendung führt zur Ablehnung der App im App Store.

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