미디파일을 300개 정도 불러와서 출력해야 하는데요,


미리 파일 용량은 다 합쳐도 100kb 도 안되는데,


한 50개 넘어가면 로그캣에 GC_EXPLICIT 뜨고 프로세스가 죽네요.

 

30개 정도로 하면 잘 되거든요,


미디 파일은 리소스로 추가한 상태고요 코드는 이렇습니다.

 

                _map = new HashMap<String, Integer>(300);
                _soundPool = new SoundPool(300, AudioManager.STREAM_MUSIC, 0);
       
                for (Field field : R.raw.class.getFields()) {
                    try {
                       _map.put(field.getName(), _soundPool.load(_context, field.getInt(R.raw.class), 1));
                    } catch (Exception e) {
                    }
                }

 

다른 곳은 이상없는 거 다 확인했는데 _soundPool.load 요녀석이 문제네요.

최대 스트림을 크게 잡아줘도 안되고 AVD 메모리 늘려줘도 안되고 뭘 어떡해야할지 모르겠어요.