0

我在安卓操作系统上开发了一个简单的钢琴应用程序。它工作成功,但非常缓慢。谁能告诉我如何让它更快地工作?

 public class MainActivity extends Activity implements OnClickListener{
    @Override
public void onClick(View v) {

    if(v.equals(b1)){
        sound = R.raw.piano_f;

    }else if(v.equals(b2)){
        sound = R.raw.piano_e;
    }
           new MyTask(MainActivity.this,sound).execute();
   }
}

 class MyTask extends AsyncTask<Void, Void, Void>{
     int sound;
     Context context;
     public MediaPlayer media;

         MyTask(Context context , int sound){
    this.sound = sound;
    this.context = context;}

    @Override
protected Void doInBackground(Void... params) {
    // TODO Auto-generated method stub
    media = MediaPlayer.create(context,sound );
    media.start();
    return null;
          }
        }
4

1 回答 1

1

我建议使用 SoundPool 而不是 MediaPlayer 以获得更好的性能。您可以在此处阅读有关 Soundpool 及其用法的信息:

http://developer.android.com/reference/android/media/SoundPool.html

还有一些示例代码:

http://www.edumobile.org/android/android-programming-tutorials/sound-pool-example-in-android-development/

于 2013-08-08T22:46:16.890 回答