Loading MP3s into the Sound Pool in Android

我只是一个虾纸丫 提交于 2019-12-02 12:14:25

问题


I want to load a couple of MP3s into the sound pool, but I will only be using these MP3s on Activity 3, is it possible to load the MP3s in Activity 1?

Or is this limited to the Activity that loads it uses it?

I can't find the answer in the docs.


回答1:


You can load them anytime and use them everywhere. The best thing to re-use the SoundPool object would be to extend the Application class and declare a private variable in there that is your SoundPool. Something like:

class MyApp extends Application {
    private static MyApp singleton;

    private static SoundPool mSoundPool;

    public onCreate() {
         super.onCreate();
         singleton = this;
         mSoundPool = new SoundPool(1, AudioManager.STREAM_MUSIC, 0); Just an example
    }

    public static MyApp getInstance() {
         return singleton;
    }

    public SoundPool getSoundPool() {
         return mSoundPool;
    }
}

Now, anywhere on you code you can run:

MyApp.getInstance().getSoundPool();

and you'll have access to your global SoundPool object.

PS: don't forget to update the Manifest if you extend the Application Class.



来源:https://stackoverflow.com/questions/7061594/loading-mp3s-into-the-sound-pool-in-android

易学教程内所有资源均来自网络或用户发布的内容,如有违反法律规定的内容欢迎反馈
该文章没有解决你所遇到的问题?点击提问,说说你的问题,让更多的人一起探讨吧!