我在使用MediaPlayer.setVolume调节声音的时候, 不起作用. 我是这样使用的
MediaPlayer mp = MediaPlayer.create(context, R.raw.recv);
mp.setAudioStreamType(AudioManager.STREAM_MUSIC);
int maxVolume = mAudioManager.getStreamMaxVolume(AudioManager.STREAM_MUSIC);
mp.setVolume(maxVolume * mLastProgress / 10, maxVolume * mLastProgress / 10);
[其中mLastProgress 是0到10可以调节的值]
用下面的方法是可以的:
AudioManager mAudioManager = (AudioManager) context.getSystemService(Context.AUDIO_SERVICE);
mAudioManager.setStreamVolume(AudioManager.STREAM_MUSIC, maxVolume * mLastProgress / 10, 0);
是不是我用的不对啊. 我想控制我程序的声音大小, 上面第二种改变了系统的, 我不想改变系统的
解决方案 »
- Unable to instantiate activity ComponentInfo
- [Share]最近研究Android command,稍微总结一下分享出来
- Android系统监控
- ListView怎么样横向显示内容
- 怎么改变LocationListener的监听时间?
- 问一个困扰了我 5个小时的问题 各位 朋友来帮忙....
- java.net.InetAddress.getByName 程序直接退出 ??
- 如何获取三星公司某一款手机的android源码
- 怎么更新ecplise中其他的安卓版本,现在只有4.4。我想用4.0
- 想要写个布局,底部是两个按钮,其余地方设置成imageview
- android 开发Activity转换问题
- 关于android BitMap回收的问题
137 public static final int STREAM_SYSTEM = AudioSystem.STREAM_SYSTEM;
138 /** The audio stream for the phone ring */
139 public static final int STREAM_RING = AudioSystem.STREAM_RING;
140 /** The audio stream for music playback */
141 public static final int STREAM_MUSIC = AudioSystem.STREAM_MUSIC;你使用的参数是正确的,在我们项目的代码里面也是这么用的, 没问题
楼主有没有打log看下 maxVolume 和maxVolume * mLastProgress / 10的值是多少 对不对
还是用用系统的AudioManager.STREAM_MUSIC,不过退出时记住还原怎么还原????
Android这么整太怪异。