2

我用 PhoneGap 创建了一个应用程序,可以播放在线流中的音乐。当 iPhone 被锁定时,它会继续在后台播放,当有来电时它会停止。

问题是当电话结束时,音乐不再响起。我使用 HTML5audio元素来播放流,我的应用程序跟踪显示playHTML5playing音频元素事件是在电话结束后触发的。

但是,它根本不会产生任何音乐或声音。

4

3 回答 3

0

在您的应用程序中连接 Cordova 的暂停和恢复事件,如果您处于暂停状态,那么您的应用程序将暂停并且不会播放任何内容。您应该在 resume 事件上调用 play 函数。有关更多信息,请参阅事件:http ://cordova.apache.org/docs/en/2.6.0/cordova_events_events.md.html#Events

于 2013-06-04T18:14:15.547 回答
0

在为您的应用启用音频设备之前执行播放命令时会发生这种情况。

是的,这是因为当您的呼叫到达时应用程序关闭,要返回应用程序并播放音频需要几秒钟,简而言之,在通话结束后启动音频设备需要几秒钟。如果您的播放指令在音频设备之前执行为您的应用程序启动

你可以通过科尔多瓦的简历事件解决这个问题

于 2013-06-13T08:26:13.333 回答
0

作为一名安卓程序员,也有类似的问题。在处理使用 HTML5 的 CordovaWeb 视图时,如果活动因其他事情(例如电话)而中断,则需要在代码中进行处理。在 Android 中,当有中断时,会调用 onPause 或类似的方法。在其中,您需要保存状态以及 web 视图的页面 URL。

当您向后导航时,您需要恢复状态。

我知道我在使用 Android 时说的是 iOS,但是在做这样的事情时会有一些重叠。

请参阅:在嵌入式 PhoneGap 应用程序中保存和恢复 WebView

于 2013-06-19T18:15:29.867 回答