【问题标题】:Cordova sounds stop background music科尔多瓦的声音停止背景音乐
【发布时间】:2016-12-06 00:25:33
【问题描述】:

我搜索了很多关于我的问题,但没有找到解决方案。在我使用 Cordova 的应用程序中,我播放 mp3 声音。一切都很好,除了当你播放背景音乐(mp3、谷歌音乐……)时,声音会停止背景音乐。我不想在播放我的声音时停止背景音乐。

我尝试了 3 种不同的方法:

1 - 插件:cordova-plugin-media

当声音播放时,背景音乐停止,最后不重新开始。

2 - 插件:cordova-plugin-nativeaudio

最糟糕的是,当我启动我的应用程序时背景音乐停止了

3 - 使用javascript函数

var mySound = new Audio('sounds/entering.mp3');
mySound.play();

在Android上运行良好,声音正在播放,背景音乐音量减小,声音结束后,背景音乐音量恢复正常。 在 iOS 上,背景音乐会停止,并且不会在最后播放。

有人遇到过这个问题吗?

谢谢!

【问题讨论】:

  • 您找到解决方案了吗?
  • 我使用的不是干净的解决方案。我在 Android 设备上使用 cordova-plugin-yanap。它工作正常。在 iOS 上,我使用 ordova-plugin-dialogs 并修改了哔声。您可以在 CDVNotification.bundle 中找到声音文件...对我有用,因为我只有一个声音...
  • cordova-plugin-nativeaudio 对于你想要做的事情对我来说效果很好。

标签: cordova audio mp3


【解决方案1】:

我创建了一个cordova插件来处理这种情况:https://github.com/davidfig/cordova-allow-background-audio

cordova add plugin cordova-allow-background-audio

该插件基于我在这里找到的答案:iphone app allow background music to continue to play

【讨论】:

  • 我描述的哪些方法应该与您的插件一起使用?
  • 如果您使用此 iOS 插件,背景音乐将继续与您的应用程序声音一起播放。您可以使用任何声音库。我在我的应用程序中使用 howler.js。该插件改变了应用程序处理声音的方式。默认的 Cordova(或者可能是 Web 视图)设置是,当应用程序使用声音时,它会独占控制扬声器。该插件更改了该设置。
  • 这太棒了,正是我所需要的。需要注意的一件事是,当 iPhone 将静音开关设置为打开时,AVAudioSessionCategoryAmbient 会静音。在我在 Apple Dev 文档中找到该注释之前,我一直在努力弄清楚为什么音频在连接到蓝牙时有效,而不是与本机扬声器一起工作。通常没什么大不了的,但值得注意。
  • 由于某种原因在我的应用程序中不起作用。我使用 var mySound = new Audio('sounds/entering.mp3');从 JS 代码播放音频
猜你喜欢
  • 1970-01-01
  • 1970-01-01
  • 2018-03-20
  • 1970-01-01
  • 1970-01-01
  • 2010-12-12
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
相关资源
最近更新 更多