아하
생활

생활꿀팁

기민한진도개272
기민한진도개272

android studio soundpool 배경소리로 전환하는 법좀 알려주세요

화면에 들어가면 자동적으로 효과음이 버튼을 안 누르고도 재생되게 하는 법좀 알려주세요

55글자 더 채워주세요.
2개의 답변이 있어요!
  • 건장한후루티99
    건장한후루티99

    Activity 내에서 음원을 재생하고자 하실 때는 MediaPlayer를 이용한 음원의 재생이 가장 기본적입니다.

    // 1.리소스에 음원 파일이 존재하는 경우 MediaPlayer mediaPlayer = MediaPlayer.create(액티비티 or 컨텍스트, 음원 파일); // 음원을 재생할 MediaPlayer를 생성 mediaPlayer.setLooping(Boolean 값); // 음원 재생 반복 여부를 선택 mediaPlayer.start(); // 음원 재생 시작// 2. 기기 내부에 음원이 저장되어 Uri를 받아와야 할 경우 Uri myUri = 음원 파일의 uri; // Uri.parse() 등 메소드를 통해 uri 추출 MediaPlayer mediaPlayer = new MediaPlayer(); mediaPlayer.setAudioStreamType(AudioManager.STREAM_MUSIC); mediaPlayer.setDataSource(액티비티 or 컨텍스, myUri); mediaPlayer.prepare(); mediaPlayer.start();

    //3. 서버, 인터넷 상에 존재하는 음원을 재생할 때 String url = "http://........"; // url 주소 MediaPlayer mediaPlayer = new MediaPlayer(); mediaPlayer.setAudioStreamType(AudioManager.STREAM_MUSIC); mediaPlayer.setDataSource(url); mediaPlayer.prepare(); mediaPlayer.start();

    위와 같이 크게 3개의 경우의 수를 들 수 있습니다.

    질문하신 내용은 위의 3개의 경우의 수 중 하나를 playMusic() 메소드에 압축시켰을 때를 가정해서 서술하자면

    1. onCreate에서 시작

    @Override protected void onCreate(Bundle savedInstanceState) { super.onCreate(savedInstanceState); setContentView(R.layout.main_transparent); playMusic(); }

    1. button 강제 클릭으로 시작

    @Override protected void onCreate(Bundle savedInstanceState) { super.onCreate(savedInstanceState); setContentView(R.layout.main_transparent); Button button = (Button) findViewById(R.id.button); button.setOnClickListener(new View.OnClickListener() { // 버튼 누를 시 음원 재생 @Override public void onClick(View view) { playMusic(); } }); button.performClick(); // 버튼 강제 클릭으로 playMusic() 메소드 실행 }

    이와 같이 구현하실 수 있겠습니다