Java 使用MediaPlayer API的setVolume不工作
我不想使用AudioManager。。。使用MediaPlayer API,我的应用程序 无法将音量设置为所需的音量。 当它在上一音量级别上播放时,该音量级别由音量增大和音量减小键设置Java 使用MediaPlayer API的setVolume不工作,java,android,Java,Android,我不想使用AudioManager。。。使用MediaPlayer API,我的应用程序 无法将音量设置为所需的音量。 当它在上一音量级别上播放时,该音量级别由音量增大和音量减小键设置 public class MainActivity extends AppCompatActivity { protected static MediaPlayer mp; @Override protected void onCreate(Bundle savedInstanceS
public class MainActivity extends AppCompatActivity {
protected static MediaPlayer mp;
@Override
protected void onCreate(Bundle savedInstanceState) {
super.onCreate(savedInstanceState);
setContentView(R.layout.activity_main);
final Button next=(Button) findViewById(R.id.button);
mp=MediaPlayer.create(this,R.raw.m1);
mp.setVolume(0.02f,0.02f);
mp.start();
mp.setLooping(true);
next.setOnClickListener(new View.OnClickListener() {
@Override
public void onClick(View v) {
Intent intent = new Intent(MainActivity.this,Main2Activity.class);
startActivity(intent);
}
});
如文件中所述: 建议使用此API来平衡应用程序中音频流的输出。除非您编写应用程序来控制用户设置,否则此API应优先于设置特定类型的所有流的音量的
setStreamVolume(int,int,int)
不过,您可以将流设置为mediaplayer,让它继续播放
所需的流,如音乐/通知或警报,应
满足要求
否则,如果您想播放某些特定级别的声音,则必须使用
AudioManager
API设置特定流&设置流的音量并播放音频。这是一种常见的做法 如文件中所述:
建议使用此API来平衡应用程序中音频流的输出。除非您编写应用程序来控制用户设置,否则此API应优先于设置特定类型的所有流的音量的setStreamVolume(int,int,int)
不过,您可以将流设置为mediaplayer,让它继续播放
所需的流,如音乐/通知或警报,应
满足要求
否则,如果您想播放某些特定级别的声音,则必须使用
AudioManager
API设置特定流&设置流的音量并播放音频。这是一种常见的做法 请直接发布代码,而不是截图;)是啊,完成了。。。。请再次查看请直接发布代码,而不是截图;)是啊,完成了。。。。请再看一遍
mp.setAudioStreamType(AudioManager.STREAM_MUSIC);