是否有任何Adb命令将音量设置为特定值?我知道我们能做到
adb shell input keyevent 音量增大和减小,但我想将其设置为一个特定值。如果我更改了它的DB,那么我必须重新启动设备以使更改得到反映,所以我不想走那条路。有没有什么API可以让我不用重启就可以改变这个值,也不需要依赖音量的增大和减小?
发布于 2018-10-23 21:07:30
还可以使用media外壳命令:
media volume: the options are as follows:
--stream STREAM selects the stream to control, see AudioManager.STREAM_*
controls AudioManager.STREAM_MUSIC if no stream is specified
--set INDEX sets the volume index value
--adj DIRECTION adjusts the volume, use raise|same|lower for the direction
--get outputs the current volume
--show shows the UI during the volume change
examples:
adb shell media volume --show --stream 3 --set 11
adb shell media volume --stream 0 --adj lower
adb shell media volume --stream 3 --get第一个示例可能就是您正在寻找的示例(但在询问时它可能并不存在)
发布于 2014-01-11 15:15:29
在带根目录的手机上,您可以使用service call audio <code> i32 <volume>调用setMasterVolume()。代码是特定于版本的。假设您想在KitKat设备上将音量设置为50%。该命令将为:
service call audio 9 i32 50发布于 2014-09-06 06:27:36
我已经使用服务呼叫音频测试在android 2.3设备上设置了音量。为了更具通用性,您需要研究IBinder和交易编号。
要了解您想要什么,请执行以下操作:
Adb shell服务列表包
蓝牙这将告诉您需要查找服务的程序包文件(例如,
在线搜索服务类别和'transaction‘("com.Bluetooth.Ibluetooth transaction")
查找源文件和Ibinder事务详细信息。接下来是输入参数的详细信息。
也就是说,蓝牙上的第一个事务是.is enabled()。没有输入参数
要使用它,请发送:
Adb shell服务调用蓝牙1
它应该返回一个包含答案的包。
请记住:-我认为它只适用于有根的设备-您找到的事务编号的偏移量为1(事务0通过服务调用' service‘1调用)-有两种类型的输入: i32表示整数,s16表示字符串
为了设置音频,设置音量有三个输入整数(事务6)
要使用它,请发送:
Adb shell服务调用7 i32 3 i32 15 i32 0这会将媒体音量设置为15 (媒体音频的默认级别数为15)
https://stackoverflow.com/questions/21055947
复制相似问题