2016-12-15 61 views
1

我从本地文件加载UIWebView HTML游戏。 iOS的10.2/8的XCode /斯威夫特3UIWebView没有声音iOS10

override func viewDidLoad() { 
     super.viewDidLoad() 
      if let path = Bundle.main.path(forResource: "index", ofType: "html", inDirectory: "game") { 
      webView.loadRequest(URLRequest(url : URL(fileURLWithPath: path))) 
     } 
    } 

似乎一切都很好,但我不能听到游戏中的任何声音。

我通过Mobile的Safari浏览器从本地主机服务器打开相同的文件(游戏),声音看起来不错。所以我敢肯定,HTML/JavaScript文件&连接是好的,问题与iOS有关。

在info.plist中添加了“所需的背景模式” - >“应用程序播放音频或流音频/视频”,但没有任何更改。设备上没有声音。

+0

你能解决这个问题吗? – thedp

+0

终于我解决了,是的。对于这种情况,您必须在本地服务器上运行应用程序。我使用GCDWebServer,一切正常。 – dejix

回答

-1

你应该之前webview.loadRequest(...)

AVAudioSession.sharedInstance().setCategory(AVAudioSessionCategoryPlayback, error: nil) 
+0

不幸的是没有任何改变,设备上没有声音 – dejix

1

跑这条线我回答我的问题,以防万一有人有同样的问题。我通过在本地服务器上运行我的应用程序,找到了解决方案。我用GCDWebServer,一切都顺利。

不知道为什么发生这个声音问题,并通过这种方式解决,但我想这是一个在iOS或类似的JavaScript“安全”的问题。

post游戏我的答案。