[SWIFT] Es wurde ein Problem behoben, bei dem die Videowiedergabe unter iOS14 während des Hintergrundübergangs angehalten wurde
Korrespondenz
playerView.player = nil
playerView.player = player
** Ausführungszeitpunkt ändern **
@objc func applicationWillResignActive(_ notification: NSNotification?) {
playerView.player = nil
}
@objc func applicationDidBecomeActive(_ notification: NSNotification?) {
playerView.player = player
}
Hintergrund
- Benutzer "Die Hintergrundwiedergabe ist nach dem Update auf iOS 14 seltsam. Irgendwie: rage :: bangbang:"
- Watakushi ": schluchzen:"
Vor der Korrespondenz
playerView.player = nil
wurde mit applicationDidEnterBackground
erstellt. * Entsprechend dem Inhalt des von Apple veröffentlichten Dokuments
Umfrage
- Es hat aufgehört zu funktionieren, obwohl ich nichts getan habe ⇒ Haben sich die Betriebssystemspezifikationen geändert?
- Pause, wenn Sie in den Hintergrund gehen ⇒ Entspricht dies dem Vorgang, bei dem der Player in der Ebene eingestellt ist?
Überprüfung
- Manuell
playerView.player = nil
während der Videowiedergabe und vor der Hintergrundmigration
- Gehen Sie in den Hintergrund
⇒ ** "Wiedergabe fortgesetzt!" **
Die Schlussfolgerung lautet ...
** "Wird der Zeitpunkt für die Überprüfung, ob sich ein Spieler in der Ebene befindet, nicht geändert?" **
Verlängerung
- Geändert zu
playerView.player = nil
in ** applicationWillResignActive
**, das vor applicationDidEnterBackground
ausgeführt wird
- Da das Paar zu
applicationWillResignActive
** applicationDidBecomeActive
** ist, wechseln Sie dort zu playerView.player = player
.
⇒ ** "Wiedergabe fortgesetzt!" **
- Wir haben außerdem bestätigt, dass es unter iOS 11-14 und iPad OS 13 und 14 funktioniert.
Zusammenfassung
- Selbst wenn Sie es als Apple-Dokument schreiben, funktioniert es nicht, sodass die Wahrscheinlichkeit einer Fehlfunktion des Betriebssystems hoch ist.
- Es wird gemunkelt, dass dieser Fehler in iOS 14.2 Beta2 behoben wurde.
Andere
- Es ist schon eine Weile her, dass iOS14 veröffentlicht wurde, aber ich habe diese Lösung nicht gesehen, daher werde ich einen Artikel veröffentlichen.
Verweise
- Apple : Playing media while in the background using AV Foundation on iOS
- Apple : Playing Audio from a Video Asset in the Background
- @ KenNagami: iOS App Life Cycle
- @bosteri_bon: Das Problem, dass "Hintergrundwiedergabe" unter iOS14 nicht möglich ist, wurde behoben