저는 아주 새로운 자바 프로그램입니다. 그래서 매우 어리석은 실수를 저 지르면 나와 함께 감내하십시오. SoundPool을 사용하는 카운터 앱에서 버튼을 클릭 할 때 소리를 재생하려고 시도하지만 버튼 중 하나를 클릭하면 앱이 충돌합니다. 컴파일하는 동안 오류가 표시되지 않습니다. 다음은 코드입니다.SoundPool 응용 프로그램이 충돌합니다
package com.example.c0unter;
import android.os.Bundle;
import android.app.Activity;
import android.view.Menu;
import android.view.View;
import android.view.View.OnClickListener;
import android.widget.Button;
import android.widget.TextView;
import android.media.SoundPool;
import android.media.AudioManager;
public class MainActivity extends Activity {
private int Count=0;
private SoundPool spool;
@Override
protected void onCreate(Bundle savedInstanceState) {
super.onCreate(savedInstanceState);
setContentView(R.layout.activity_main);
Button ResetButton = (Button) findViewById(R.id.ResetButton);
Button CounterButton = (Button) findViewById(R.id.CounterButton);
final TextView CountText = (TextView) findViewById(R.id.CountText);
ResetButton.setOnClickListener(new OnClickListener() {
public void onClick(View v) {
Sound(R.raw.reset_button);
Count=0;
CountText.setText(" " + Count);
}
});
CounterButton.setOnClickListener(new OnClickListener() {
public void onClick(View v) {
Sound(R.raw.counter_button);
Count++;
CountText.setText(" " +Count);
}
});
}
public void Sound(int soundID){
spool.load(this, soundID ,1);
AudioManager audioManager = (AudioManager) getSystemService(AUDIO_SERVICE);
float volume = (float) audioManager.getStreamVolume(AudioManager.STREAM_MUSIC);
spool.play(soundID, volume, volume, 1, 0, 1f);
};
}
충돌에 대한 logcat 출력을 붙여 넣으시겠습니까? – loeschg