Flutterのvideo_playerから流れる音をアプリを閉じた時にも再生し続けるには in iOS
iOSにてvideo_playerでvideoを再生してる時にアプリを閉じるとデフォルトだと鳴っていた音声が止まってしまう。
こんなissueもあるが、これはそもそもまだmergeされてないし、手元で動かした感じだとちゃんと動かなかった。
これはvideo_player側の設定というよりはiOS側の設定を行うことでうまくいくようになる。
まずはInfo.plistにこんな感じでbackground modeのaudio設定を追加。
<key>UIBackgroundModes</key>
<array>
<string>audio</string>
</array>
あとXCodeのRunner > Signing&Capabilitiesの+CapabilityよりBackground ModesのAudio,AirPlay, and Picture in Pictureを許可する(場合によってはこれはいらないかも)。
以上。
これでflutter clean
してからflutter run
すればvideo再生中にアプリを閉じても音声は鳴ったままになる。
記事執筆ありがとうございます!
こちらなのですが,Info.plistでUIBackgroundModesを設定してもアプリを閉じれば,videoの音声も止まってしまいます.videoPlayerOptions: VideoPlayerOptions(allowBackgroundPlayback: true, mixWithOthers: true)などのオプションを追加しましたがやはりうまく再生できませんでした.
いろいろなパッケージを調べたのですが,現状,Flutterで動画の音声をバックグラウンドで再生する方法はなさそうです.どうしてもこの機能を実装したい場合,SwiftでVideoのバックグラウンド再生機能を書いて,Flutter側から呼び出すしかないのでしょうか?また,非常に手前勝手なお願いなのですが,うまくバックグラウンド再生できた際のコードをみせていただけると嬉しいです.
よろしくお願いいたします!