2
저는 Android 개발에 익숙하지 않아서 방송 수신기에서 SoundPool 사운드를 재생하는 방법을 알고 싶습니다.Android 프로그래밍 - 브로드 캐스트 수신기에서 SoundPool 사운드를 재생하는 방법
어딘가에서 SoundPool을 사용하면 사운드를 재생하는 방법이 있지만 제대로 설정하는 방법을 모르겠습니다.
내 Eclipse res \ raw 폴더에 wave 및 mp3 파일과 같은 일부 사운드 파일이 있습니다. half.wav라는 파일을 재생하고 싶습니다.
내 브로드 캐스트 수신기에 배치해야하는 예제 코드를 보여줄 수 있습니까?
여기 코드에서 첫 번째 시도가 있지만 soundID = soundPool.load (this, R.raw.half, 1);이라는 오류가 표시됩니다.
여기
는 "방법로드 (문맥, INT, INT) 유형 SoundPool에서이 ... 적용 할 수 없다"클래스에 대한 코드입니다 : 사전에
package ChimeMe.BigBen;
import android.content.BroadcastReceiver;
import android.content.Context;
import android.content.Intent;
import android.widget.Toast;
import android.os.Bundle;
import android.media.AudioManager;
import android.media.SoundPool;
import android.media.SoundPool.OnLoadCompleteListener;
public class AlarmReceiver extends BroadcastReceiver {
private SoundPool soundPool;
private int soundID;
boolean loaded = false;
@Override
public void onReceive(Context context, Intent intent) {
try {
// Load the sound
soundPool = new SoundPool(10, AudioManager.STREAM_MUSIC, 0);
soundPool.setOnLoadCompleteListener(new OnLoadCompleteListener() {
@Override
public void onLoadComplete(SoundPool soundPool, int sampleId,
int status) {
loaded = true;
}
});
soundID = soundPool.load(this, R.raw.half, 1);
Toast.makeText(context, "This is the alarm.", Toast.LENGTH_SHORT)
.show();
} catch (Exception e) {
Toast.makeText(
context,
"There was an error somewhere, but we still received an alarm",
Toast.LENGTH_SHORT).show();
e.printStackTrace();
}
}
}
감사합니다. 정말
, 에마
코딩 샘플에 대해 Pheonix2105에 감사드립니다. :-) –