about summary refs log tree commit diff
path: root/modules/expo-bluesky-swiss-army/ios/PlatformInfo/ExpoPlatformInfoModule.swift
diff options
context:
space:
mode:
authorHailey <me@haileyok.com>2024-08-09 14:35:26 -0700
committerGitHub <noreply@github.com>2024-08-09 14:35:26 -0700
commit5bfe5aa503d73e687ccc048efc5138edea97bea3 (patch)
tree2777c1371e9c7a1f7d4e31e50b1bd0137ec82e67 /modules/expo-bluesky-swiss-army/ios/PlatformInfo/ExpoPlatformInfoModule.swift
parentdd0d50a6f0f69d8b58f7dd26303b6b89528d2d04 (diff)
downloadvoidsky-5bfe5aa503d73e687ccc048efc5138edea97bea3.tar.zst
[Video] More tweaks to `AVAudioSession` options (#4910)
Diffstat (limited to 'modules/expo-bluesky-swiss-army/ios/PlatformInfo/ExpoPlatformInfoModule.swift')
-rw-r--r--modules/expo-bluesky-swiss-army/ios/PlatformInfo/ExpoPlatformInfoModule.swift16
1 files changed, 14 insertions, 2 deletions
diff --git a/modules/expo-bluesky-swiss-army/ios/PlatformInfo/ExpoPlatformInfoModule.swift b/modules/expo-bluesky-swiss-army/ios/PlatformInfo/ExpoPlatformInfoModule.swift
index ff1148a0b..471f1438b 100644
--- a/modules/expo-bluesky-swiss-army/ios/PlatformInfo/ExpoPlatformInfoModule.swift
+++ b/modules/expo-bluesky-swiss-army/ios/PlatformInfo/ExpoPlatformInfoModule.swift
@@ -8,14 +8,26 @@ public class ExpoPlatformInfoModule: Module {
       return UIAccessibility.isReduceMotionEnabled
     }
 
+    Function("setAudioCategory") { (audioCategoryString: String) in
+      let audioCategory = AVAudioSession.Category(rawValue: audioCategoryString)
+      try? AVAudioSession.sharedInstance().setCategory(audioCategory)
+    }
+
     Function("setAudioMixWithOthers") { (mixWithOthers: Bool) in
       var options: AVAudioSession.CategoryOptions
+      let currentCategory = AVAudioSession.sharedInstance().category
       if mixWithOthers {
         options = [.mixWithOthers]
       } else {
-        options = []
+        options = [.duckOthers]
       }
-      try? AVAudioSession.sharedInstance().setCategory(AVAudioSession.Category.playback, mode: .default, options: options)
+      try? AVAudioSession
+        .sharedInstance()
+        .setCategory(
+          currentCategory,
+          mode: .default,
+          options: options
+        )
     }
   }
 }