0

我集成了一个视频播放器,在播放音频或视频时遇到了挑战,即声音被静音,以防您的设备处于静音模式或振动模式。

这是来自 AVFoundation/AVKIt 或 Apple 的 IOS 设备的默认配置设置。

我在苹果开发者网站和Stackoverflow上搜索了不同的解决方案,以使设备进入响铃模式或在播放器视图控制器类上编写代码。

但是如果我们有许多类使用音频视频功能,我们必须在每个视图控制器上一次又一次地编写相同的代码。我认为这根本不是一个好习惯。

所以在这里我分享了实现我们想要的结果的优化方法,即取消静音,以防设备处于静音模式或振动模式。

4

1 回答 1

1

以下是在您的设备在整个应用程序中处于静音或振动模式时启用音频功能的简单步骤,只需立即声明即可。

在 iPhone 6、iPhone 8、iPhone XR 和模拟器上测试。

第 1 步:打开 AppDelegate.swift 类文件。

第 2 步:转到 applicationDidBecomeActive 函数。

第 3 步:在 applicationDidBecomeActive 函数中编写以下代码

  • 在 Swift 5 中:

    do {
             try AVAudioSession.sharedInstance().setCategory(.playback)
       } catch(let error) {
             print(error.localizedDescription)
       }
    
  • 在 Swift 4 或更低版本中:

       do {
             try AVAudioSession.sharedInstance().setCategory(AVAudioSessionCategoryPlayback)
          } catch {
              // error handling or perform your desire function
          }
    
  • 在目标 C 中:

         [[AVAudioSession sharedInstance]
          setCategory: AVAudioSessionCategoryPlayback
          error: nil];
    

第 4 步:编译并运行您的项目。

欢呼!!!

很高兴能帮助你。谢谢。

于 2020-03-27T07:42:39.450 回答