如何使用adb shell服务调用音频来更改音量

时间:2014-12-10 00:17:59

标签: android adb

我正在尝试使用

更改Android设备上的音量
service call audio 9 i32 50

将音量设置为50%。另外,当我这样做时:

service call audio 16

我能够看到十六进制值是32.但是,我没有看到设备上的任何更改。音量没有改变。

另一方面,当我通过按下音量增大按钮更改设备的音量时,我在service call audio 16时没有读到任何更改。

我想通过设置直接值而不使用input keyevent KEY_VOLUME_UP (or DOWN)来更改音量。

任何帮助?

谢谢!

2 个答案:

答案 0 :(得分:9)

感谢您的快速回复,但我找到了解决方案,即使用

" adb shell service call audio 7 i32 3 i32 0 i32 1"

其中7是"接口IAudioService"中的第七个函数。 list:setStreamVolume(int streamType,int index,int flags,String callingPackage),3是speaker,0是音量级别,1是标志。     第二个数字(3)代表以下选项:     1:电话     3:发言者     4:报警     6:蓝牙

注意: 当我尝试在我的问题中发布的解决方案但我没有工作时,我以root身份运行。

答案 1 :(得分:4)

对于发言人 - 更改媒体音量,将其设置为0

adb shell service call audio 3 i32 3 i32 0 i32