0
5 초의 시간 간격으로 차례대로 오디오를 실행하려고합니다. 그러나 나는 그 일이 실제로 일어나는 것을 보지 않는다. 목록의 세 번째 오디오가 재생되고 다른 오디오는 건너 뜁니다. 이것은 디버깅하는 동안 music3 만 재생되고 다른 것은 재생되지 않음을 의미합니다. 나는 이것을하는 대체 방법을 좋아할 것입니다. 게다가 나는 그처럼 준비 방법을 사용했다. 달리면서 달라도.지연된 android로 재생되는 오디오 변경
for(int j=0;j<3;j++)
{
if(j==0)
{
xnp = MediaPlayer.create(this,R.raw.ticktock);
new Handler().postDelayed(new Runnable() {
@Override
public void run() {
try {
xnp.prepare();
xnp.start();
} catch (IllegalStateException e) {
// TODO Auto-generated catch block
e.printStackTrace();
} catch (IOException e) {
// TODO Auto-generated catch block
e.printStackTrace();
}
}
}, 5000);
xnp.stop();
}
if(j==1)
{
xnp = MediaPlayer.create(this,R.raw.music2);
new Handler().postDelayed(new Runnable() {
@Override
public void run() {
try {
xnp.prepare();
xnp.start();
} catch (IllegalStateException e) {
// TODO Auto-generated catch block
e.printStackTrace();
} catch (IOException e) {
// TODO Auto-generated catch block
e.printStackTrace();
}
}
}, 5000);
xnp.stop();
}
else if (j==2)
{
xnp = MediaPlayer.create(this,R.raw.music3);
new Handler().postDelayed(new Runnable() {
@Override
public void run() {
try {
xnp.prepare();
xnp.start();
} catch (IllegalStateException e) {
// TODO Auto-generated catch block
e.printStackTrace();
} catch (IOException e) {
// TODO Auto-generated catch block
e.printStackTrace();
}
}
}, 5000);
xnp.stop();
intenter();
}
}
은이 같은 의미 (INT의 J = 0; J <3; J ++) 용 \t \t { \t \t 경우 (j == 0) \t \t \t { \t \t \t xnp = MediaPlayer를. create (this, R.raw.ticktock); \t \t \t xnp.setOnCompletionListener (새 OnCompletionListener() { \t \t \t \t 공공 무효 onCompletion (최종 MediaPlayer를 헌병) { \t \t \t 새로운 핸들러(). postDelayed (새의 Runnable() { \t \t \t \t @ 오버라이드 \t \t \t \t 공개 무효 run() { \t \t \t \t \t \t \t \t \t \t \t xnp.start(); \t \t \t \t \t \t \t \t \t} \t \t \t \t}, 5000); \t \t \t xnp.release(); \t \t \t intenter(); \t \t \t \t \t} \t \t \t}); \t \t \t} – wisejoy
그래도 작동하지 않았습니다! 이번엔 아무 것도 못 들었어! – wisejoy