Qt Android / iOS:如何在qml中控制设备音量

时间:2014-09-01 15:54:25

标签: android ios qt qml mpvolumeview

我正在Android/iOS中使用Qt Quick开发qml webradio应用程序。 要播放我的广播流我使用MediaPlayer qml元素,我想添加一个滑块来控制播放音乐的音量。

目前,我已尝试使用滑块链接到MediaPlayer卷属性,但这不会控制设备卷。实际上,在AndroidiOS中一样,当我更改滑块值时,只会更改MediaPlayer卷。当我按下设备的音量按钮时,滑块不会受到影响。

我想要的是一个滑块,我可以看到并控制设备的音量,而不仅仅是MediaPlayer元素的音量。

有谁知道怎么做?

1 个答案:

答案 0 :(得分:0)

截至今天,Qt似乎不支持从QML设置全局设备卷,而不是C ++。您只能设置通过Qt生成的各个音频流的音量。您最好的选择是将滑块的信号连接到c ++类,然后运行本机iOS / Android代码来设置设备音量。

您可以查看此question,其中介绍了如何在iPhone上执行此操作。类似的东西也适用于Android。

对于跨平台支持,您必须以旧方式执行,这意味着处理卷的类应该可以访问独立于平台的通用接口,并且对于您希望支持的每个平台都有多个实现。决定选择哪个依赖于平台的实现应该在编译中完成。

正如我所说,这是2015年初.Qt正在迅速发展,你可以在QtMultimedia中看到一个新类,它可以在所有平台上处理这个问题。