I have an WKWebView
there I show my site and I play a sound effect with js but when I do so the background music is stop playing. I like to mix in this sound effect with background music like Spotify.
Any idea how I do so?
This is my code in ViewController.swift
import WebKit
import AVFoundation
class ViewController: UIViewController, WKNavigationDelegate {
var webView: WKWebView!
override func loadView() {
webView = WKWebView()
webView.navigationDelegate = self
// Set so play inline works
let webConfiguration = WKWebViewConfiguration()
webConfiguration.allowsInlineMediaPlayback = true
if #available(iOS 10.0, *) {
webConfiguration.mediaTypesRequiringUserActionForPlayback = []
} else {
// Fallback on earlier versions
webConfiguration.mediaPlaybackRequiresUserAction = false
}
webView = WKWebView(frame: CGRect.zero, configuration: webConfiguration)
//super.init(coder: aDecoder)
view = webView
}
override func viewDidLoad() {
super.viewDidLoad()
// Do any additional setup after loading the view, typically from a nib.
// Set so we can play sound effect without stop background music
// Get the local lang from iphone
var locale = Locale.preferredLanguages[0]
if (locale.contains("-")) {
locale = locale.substring(to: locale.characters.index(locale.startIndex, offsetBy: 2))
}
let url = URL(string: "https://test.com/?lang=" + locale)!
webView.load(URLRequest(url: url))
webView.allowsBackForwardNavigationGestures = true
// add background color to wkwebview to transparent
webView.backgroundColor = UIColor.clear
webView.scrollView.backgroundColor = UIColor.clear
// Change the statusbar to vit
UIApplication.shared.statusBarStyle = .lightContent
}
override func didReceiveMemoryWarning() {
super.didReceiveMemoryWarning()
// Dispose of any resources that can be recreated.
}
}
I have found out that this is not possible.