在iOS 4中,我在一个带有javascript音频播放器的UIWebView中加载了一个页面。我没有创建这个播放器,它是由第三方拥有的,所以我不能修补它。当我单击播放按钮时,我看到如下的NSLog打印输出:
setting movie path: http://data.myaudio.com/thefile.mp3
我的问题是,它的电影路径设置是什么,我该如何拦截它?音频将继续播放,直到我创建另一个UIWebView,或使用iPhone主页按钮双击可访问的内置音频控件,或关闭应用程序。我无法使用shouldStartLoadWithRequest:
拦截路径,javascript函数audio.play()
似乎直接调用了一些内置播放器。我想控制音频播放的位置和方式,但是没有解析任何<audio>
标签的HTML,我无法弄清楚如何获取该路径并将其指向默认值以外的其他位置。
答案 0 :(得分:1)
UIWebView本质上是WebKit的包装器。 Apple不希望您接触到比现有委托方法提供的更多信息。
话虽这么说,你可以通过注入JavaScript来修改任何加载文档的DOM。这样你也可以修改audio.play而不做任何事情,而是让URL与你自己可以控制的播放器一起玩。