我正在使用libGDX和Robovm为iOS开发游戏;但是,我需要让用户在玩游戏时保持播放背景音乐(ipod或其他应用程序).
我将配置参数allowIpod添加到
IOSApplication:
protected IOSApplication createApplication() {
IOSApplicationConfiguration config = new IOSApplicationConfiguration();
config.orientationLandscape = true;
config.orientationPortrait = false;
config.allowIpod = true;
return new IOSApplication(new Game(), config);
}
但是,如果在启动应用程序之前播放音乐,则会在打开游戏后继续播放.但是,如果我开始游戏,然后按Home键,然后播放音乐,然后返回游戏,音乐停止.
有没有人遇到类似情况?请帮忙!
谢谢
最佳答案 根据ObjectAL
docs(这是libGDX IOSAudio使用的),您需要在OALSimpleAudio sharedInstance上将useHardwareIfAvailable设置为false.这应该允许您背景应用程序,启动音乐,并让音乐继续播放.
OALSimpleAudio.sharedInstance().setUseHardwareIfAvailable(false);
但是,这当前没有绑定在libGDX OALSimpleAudio RoboVM绑定中,因此您需要修改libGDX RoboVM后端中的OALSimpleAudio源以访问该属性.像(未经测试)的东西:
@Property(selector = "getUseHardwareIfAvailable")
public native boolean getUseHardwareIfAvailable()
@Property(selector = "setUseHardwareIfAvailable:")
public native void setUseHardwareIfAvailable(boolean b);