Warning: file_get_contents(/data/phpspider/zhask/data//catemap/3/android/190.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Android 声音池无法加载样本(null)_Android_Android Sound - Fatal编程技术网

Android 声音池无法加载样本(null)

Android 声音池无法加载样本(null),android,android-sound,Android,Android Sound,我正在开发一个游戏,当我想加载一些声音时,我得到了一个错误“soundpool无法加载样本(null)”(我在logcat中看到它,它不会抛出任何异常) 我在谷歌上搜索了一下,但什么也找不到 有什么建议吗?谢谢你的关注 这是我的代码: SoundPool soundPool = new SoundPool(10, AudioManager.STREAM_MUSIC, 0); ObjSound = soundPool.load(context, R.raw.objs

我正在开发一个游戏,当我想加载一些声音时,我得到了一个错误“soundpool无法加载样本(null)”(我在logcat中看到它,它不会抛出任何异常)

我在谷歌上搜索了一下,但什么也找不到

有什么建议吗?谢谢你的关注

这是我的代码:

        SoundPool soundPool = new SoundPool(10, AudioManager.STREAM_MUSIC, 0);
        ObjSound = soundPool.load(context, R.raw.objs, 1);

因此,问题的根源可能是,并且应该按顺序排除:

  • 文件不在那里
  • 文件在那里,但由于某种原因它不可读
  • 文件在那里,并且可读,但它已损坏或不是音频文件
  • 文件就在那里,并且可读,并且是一个未损坏的音频文件,但是SoundPool不喜欢它
  • 有时高频的音频会坏掉。试试低频的

  • 问题是由于内存中的初始化和加载错误。 我正在为我的所有对象编写这段代码(我有5个对象,其中9个声音相同,所以soundPool.load重复了45次!),尽管这些声音的大小不高,不应该出现内存问题

    我仍然不知道问题的根源

    但最后我通过定义soundPool和所有ObjSoundstatic,以及init来解决这个问题,并在游戏开始时只加载它们一次,然后在整个项目中使用它们