オーディオの例として、簡単なActivityクラスを作成しました。しかし、問題は、アプリを終了してもオーディオファイルが実行され続けることです。電話の真ん中で「OK/DONE」ボタンを押してACTIVITYを停止したいのですが、アクティビティクラスでどのメソッドをオーバーライドする必要がありますか?
public class Audio extends Activity {
private MediaPlayer mp;
@Override
public void onCreate(Bundle savedInstanceState) {
super.onCreate(savedInstanceState);
setContentView(R.layout.main);
setVolumeControlStream(AudioManager.STREAM_MUSIC);
}
@Override
public boolean onCreateOptionsMenu(Menu menu) {
getMenuInflater().inflate(R.menu.activity_audio, menu);
return true;
}
@Override
public boolean onKeyDown(int keyCode, KeyEvent event) {
int resId;
switch (keyCode) {
case KeyEvent.KEYCODE_DPAD_UP:
resId = R.raw.up;
break;
case KeyEvent.KEYCODE_DPAD_DOWN:
resId = R.raw.down;
break;
default:
return super.onKeyDown(keyCode, event);
}
// Release any resources from previous MediaPlayer
if (mp != null) {
mp.release();
}
// Create a new MediaPlayer to play this sound
mp = MediaPlayer.create(this, resId);
mp.start();
// Indicate this key was handled
return true;
}
}/// end class