如何控制/强制iOS系统音量[cordova]

时间:2016-10-06 15:34:16

标签: ios cordova volume

我们正在为船舶行业开发混合移动应用程序。 该应用程序用于在人员落水的情况下发出警报。

为了确保听到警报,无论用户设置如何,我们都需要强制音量为100%。这实际上是生死攸关的问题。 在开发过程中,我们使用了这个优秀的插件:https://github.com/mgcrea/cordova-plugin-volume-control

不幸的是,我们甚至无法使用该插件通过Testflight获取应用程序。

所以我的问题堆栈溢出:有没有办法强制系统卷,无论Cordova应用程序中的设置如何? (我们正在使用Ionic)

提前感谢!

1 个答案:

答案 0 :(得分:0)

看看MPVolumeView 这是我们使用的方法。

+ (void) setSystemVolume:(float)volume {

    MPVolumeView* volumeView = [[[MPVolumeView alloc] init] autorelease];
    UISlider* volumeViewSlider = nil;
    for (UIView *view in [volumeView subviews]){
        if ([view.class.description isEqualToString:@"MPVolumeSlider"]){
            volumeViewSlider = (UISlider*)view;
            break;
        }
    }
    [volumeViewSlider setValue:volume animated:YES];
    [volumeViewSlider sendActionsForControlEvents:UIControlEventTouchUpInside];
}