Я использовал документацию Apple для создания этого базового аудиоплеера, который я использую для потоковой передачи удаленных файлов из Firebase Storage. Мои вопросы:
Делают ли файлы, которые воспроизводятся таким образом, кэшируемыми на устройстве, чтобы при повторном их воспроизведении пользователю не приходилось загружать их с удаленного сервера каждый раз, когда они воспроизводятся
Если нет, что мне нужно добавить, чтобы файлы кэшировались во время сеанса и воспроизводились из этого кэша?
С AppDelegate
:
func application(_ application: UIApplication, didFinishLaunchingWithOptions launchOptions: [UIApplication.LaunchOptionsKey: Any]?) -> Bool {
let audioSession = AVAudioSession.sharedInstance()
do {
try audioSession.setCategory(.playback, mode: .default)
}
catch {
print("Setting category to AVAudioSessionCategoryPlayback failed")
}
return true
}
С ViewController
, где я играю файл:
@IBAction func playPressed(_ sender: Any) {
guard let url = URL(string: "audio file url here") else {
return
}
}