2017-02-12 1 views
0

AudioManager를 사용하고 싶지 않습니다. MediaPlayer API를 사용하면 볼륨을 원하는 수준으로 설정할 수 없습니다. 볼륨 UP 및 볼륨 다운 키로 설정된 이전 볼륨에서 재생됩니다.setVolume MediaPlayer API 사용이 작동하지 않습니다.

문서에서 언급 한 바와 같이
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); 
      } 
     }); 
+0

스크린 샷이 아닌 직접 코드를 게시하십시오.) – ByteHamster

+0

yaa 완료되었습니다 .... 다시 보시기 바랍니다. –

답변

2

:.

"이 API는 응용 프로그램 내에서 오디오 스트림의 출력을 분산하는 것이 좋습니다 당신이 사용자 설정을 제어 할 수있는 응용 프로그램을 작성하지 않는 한,이 API를 우선적으로 사용되어야한다 특정 유형의 모든 스트림의 볼륨을 설정합니다 setStreamVolume(int, int, int)합니다. "

https://developer.android.com/reference/android/media/MediaPlayer.html#setVolume(float,%20float)

당신은 그러나 수 mediaplayer에 스트림을 설정하고 에서 음악/알림 또는 알람과 같은 원하는 스트림을 재생하게하십시오. 으로 충분해야합니다. 당신이 일정 수준에 약간의 사운드를 재생하려면

mp.setAudioStreamType(AudioManager.STREAM_MUSIC); 

그렇지 않으면 당신은 특정 스트림 & 스트림의 볼륨을 설정하고 오디오를 재생하는 AudioManager API의를 사용해야합니다. 이것은 일반적인 관행입니다.

관련 문제