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 输入文本类型

PhoneGap BLE 插件在后台不起作用

在 iOs 和 Android 的 PhoneGap/Cordova-app 中播放视频

在 cordova/phonegap Android 应用程序上关闭屏幕后媒体停止播放

Cordova/Phonegap iOS:Facebook Connect 插件没有访问权限

Cordova 中的后台 Firebase 推送通知