使用Appcelerator在iOS上退出时,音频无法在后台播放

时间:2016-04-19 13:20:25

标签: ios appcelerator appcelerator-titanium

当用户退出设备上的应用时,我遇到的问题是音频无法以后台模式播放。它在模拟器上工作正常。

我必须让它发挥作用。

所以我正确设置了我的tiapp.xml(我认为),其中包含以下内容:

<key>UIBackgroundModes</key>
<string>audio</string>

我在这样的app.js中创建了一个全局音频播放器:

Ti.App.audioPlayer = Ti.Media.createAudioPlayer({
   allowBackground: true
});

Ti.Media.audioSessionCategory = Ti.Media.AUDIO_SESSION_CATEGORY_PLAYBACK;

我将 allowBackground 选项放入其中,因为我们希望在之后将其推出Android。

还有其他原因可以解决这个问题吗?这让我疯了!

我怀疑由于我设置的全球音频播放器可能是学生错误,但我不确定我做错了什么!

我正在使用SDK 5.2.2.GA

由于

西蒙

2 个答案:

答案 0 :(得分:1)

我也花了很多时间。我不得不做两件事。

  1. 将以下内容添加到我播放声音的控制器中: if (OS_IOS) { Ti.Media.audioSessionCategory = Ti.Media.AUDIO_SESSION_CATEGORY_PLAYBACK; }
  2. 将以下内容添加到tiapp.xml: <key>UIBackgroundModes</key> <array> <string>audio</string> </array>
  3. (注意,我必须将UIBackgroundModes值放在数组中才能使其工作。)

答案 1 :(得分:0)

试试这个:

Titanium.App.addEventListener('pause', function(e) { Titanium.Media.audioSessionCategory = Titanium.Media.MUSIC_PLAYER_STATE_PLAYING; });