タイルを押したときに短い音を出そうとしていますが、Android StudioではSoundPoolが廃止されていると言っています。これは私のSoundPoolPlayerクラスは次のようになり、それが現在のクラッシュに私のゲームを引き起こすものである:タッチで短い音を再生する
import android.content.Context;
import android.media.AudioManager;
import android.media.SoundPool;
import java.util.HashMap;
public class SoundPoolPlayer {
private SoundPool mShortPlayer = null;
private HashMap mSounds = new HashMap();
public SoundPoolPlayer(Context pContext) {
this.mShortPlayer = new SoundPool(4, AudioManager.STREAM_MUSIC, 0);
mSounds.put(R.raw.click, this.mShortPlayer.load(pContext, R.raw.click, 1));
}
public void playShortResource(int piResource) {
int iSoundId = (Integer) mSounds.get(piResource);
this.mShortPlayer.play(iSoundId, 0.99f, 0.99f, 0, 0, 1);
}
// Cleanup
public void release() {
// Cleanup
this.mShortPlayer.release();
this.mShortPlayer = null;
}
}
私はその後、私のゲーム活動に次のコードを使用してサウンドを再生:
SoundPoolPlayer sound = new SoundPoolPlayer(getContext());
sound.playShortResource(R.raw.click);
sound.release();
「SoundPool」を使用すると、このシナリオに最適です。 'SoundPool()'コンストラクタ*は廃止予定です。代わりに 'SoundPool.Builder'を使用して' SoundPool'インスタンスを構築します。 – Jameson