Phonegap / Cordova 在后台 IOS 一段时间后停止音频
Posted
技术标签:
【中文标题】Phonegap / Cordova 在后台 IOS 一段时间后停止音频【英文标题】:Phonegap / Cordova Stop audio after time when in background IOS 【发布时间】:2012-12-20 00:34:02 【问题描述】:我有一个音频应用程序,它使用 Cordova 2.2 及其音频 API 循环播放声音。 目前,我已经设置了多个循环,这些循环将在根据预定时间完成时停止(按每个循环 n 秒/3 小时计算)。这种方法一般都行。
playMainAudio = new Media(url,
// success callback
function()
console.log("playAudio():Audio Success");
,
// error callback
function(err)
console.log("playAudio():Audio Error: "+err);
);
// Play audio
playMainAudio.play( numberOfLoops: 123, playAudioWhenScreenIsLocked : true );
但我更喜欢添加原生代码,我可以将所有音频设置为在 3 小时后停止,而不是根据时间来解决 - 但不确定是否要查看甚至放置代码。问题是它必须在锁定或应用程序处于后台时工作(目前我设置了正确的后台模式,因此音频将在 BG 中播放)。
是否有与后台兼容的本机计时器?
【问题讨论】:
【参考方案1】:如果你热衷于在 Objective-C(不是你选择的语言)里面编辑 app delegate.m
- (void)applicationDidEnterBackground:(UIApplication *)application
停止音频但延迟使用
– performSelector:withObject:afterDelay:
在此处查看文档:
http://developer.apple.com/library/ios/#documentation/uikit/reference/UIApplicationDelegate_Protocol/Reference/Reference.html
https://developer.apple.com/library/mac/#documentation/Cocoa/Reference/Foundation/Classes/NSObject_Class/Reference/Reference.html
有关如何在 Objective-C 中播放音频的示例:
How to play a sound in objective C iphone coding
Play Audio iOS Objective-C
How can I Add Audio Player in iphone App
【讨论】:
感谢您的信息,Objective C 不是我选择的代码,我想这很难,因为我是通过 phonegap 而不是直接启动声音。 写下你的伪代码或算法。谷歌目标 C 中的确切命令以及您需要在(appdelegate.m 等)中插入该代码的文件,我已经提供了链接。如果你想成为一名 iphone 程序员,我看不到任何其他出路,因为一些编码可以在 jquery 中完成,但高级控制是在 xcode 中,这是客观的 C。给它一些时间并学习。以上是关于Phonegap / Cordova 在后台 IOS 一段时间后停止音频的主要内容,如果未能解决你的问题,请参考以下文章
Cordova/Phonegap iOS - 应用程序发送到后台后更改了 html5 输入文本类型
在 iOs 和 Android 的 PhoneGap/Cordova-app 中播放视频
在 cordova/phonegap Android 应用程序上关闭屏幕后媒体停止播放