저도 워낙 초보이고 어떤 용도로 어떻게 사용하시려는건지는 모르겠지만..
최근에 고민하고 사용해 본 적이 있어 도움이 될까 남겨봅니다
SoundPool을 사용하여 소리를 재생하려 할 때는
--- 세팅 ---
1. SoundPool 에 사용할 리소스들을 load
2. load 할때 int 타입으로 SoundPool에 등록된 key값이 리턴됩니다.
이것을 임의로 사용하실 tag와 함께 hashmap에 put
--- 재생 ---
3. hashmap에서 재생할 소리의 key값을 tag를 활용해 get 해옴
4. key값을 이용해 play
아주 간략히만 보여드리면
SoundPool sPool = new SoundPool(3, AudioManager.STREAM_MUSIC, 0);
Map <String, Integer> sMap = new HashMap<String, Integer>();
// 위처럼 가정합니다
int sKey = sPool.load(PlayClass.this, R.raw.alarm, 1);
sMap.put("alarm", sKey);
// 위와같이 load후 map에 put해두는게 좋습니다 매번 재생할때마다 새로 load 하기는 좀..
// 사용할 다른소리들도 한번에 load 해두는게 좋을 것 같네요
// 재생시
sKey = sMap.get("alarm");
// 아까 put 해두었던 alarm 에 해당되는 key값이 나오죠
sPool.play(sKey, 1, 1, 0, 0, 1);
도움 되셨을지 모르겠네요 ㅎ 최근에 알아본거라 저도 고민한 기억이 있어서..