当您的 iPhone 设备处于 Silent/Vibrate 模式时,在您的应用程序中启用音频功能

Enable audio functionality in your application while your iPhone Device is in Silent/Vibrate mode

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

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

我在 apple developer site and different solutions on Whosebug 上搜索了启用设备的响铃模式或在播放器视图控制器上编写代码 class。

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

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

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

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

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

第 2 步:转到 applicationDidBecomeActive 函数。

第三步:在applicationDidBecomeActive函数中写入如下代码

  • 在Swift5:

    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
          }
    
  • 在Objective C中:

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

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

万岁!!!

乐于助人。谢谢