Start audio as soon as the app is loaded Android App
我正在创建一个游戏,并且游戏中有一些音频剪辑。我正在使用音频池,而我仅使用2个音频剪辑。它们都是mp3格式,一个是700kb,另一个是800字节。
我正在尝试在首次加载游戏时播放700kb的音频剪辑。只要打开应用程序,背景声音就会一直循环播放。但是,我尝试过的所有方法都失败了。我能够使其正常工作的唯一方法是在启动时启动一个线程,并使该线程hibernate15秒钟。之后,它将调用开始音频并开始播放,但是如果线程被破坏,它将杀死它的声音。
我假设音频可能正在缓冲,这就是为什么音频一开始不播放的原因?另外,您是否必须从线程进行所有音频呼叫?
我刚刚在Activity onCreate()方法中使用了此代码,它工作正常:
1 2 3 4 5 6 7 8 9 10 11 12 13 | public class LaunchActivity extends Activity { private MediaPlayer mp; @Override public void onCreate(Bundle savedInstanceState) { super.onCreate(savedInstanceState); setContentView(R.layout.whatever); setVolumeControlStream(AudioManager.STREAM_MUSIC); mp = MediaPlayer.create(this, R.raw.a); mp.start(); } |
如果没有该实例的停止指令,它将继续播放该应用程序中的所有活动,如果您退出应用程序,它将继续播放,并且当您回来时,新实例将开始在旧实例上播放同时!媒体播放器是它自己的过程,因此我认为不需要其他线程。
确定您的MP3文件没有问题并导致系统崩溃吗?