【问题标题】:How to add mp3 and to be played in an application?如何添加 mp3 并在应用程序中播放?
【发布时间】:2016-06-30 04:58:02
【问题描述】:

我对下面的代码做了很多尝试。根本没有编译错误。当我用来启动我添加的 MP3 时,在 logcat 窗口中它显示“在状态 0 中调用启动”。请帮我处理这段代码。提前谢谢。我也想知道我们什么时候暂停音频,当我点击开始按钮时,我需要从那里获取歌曲恢复(或)是否有任何恢复功能,请在 cmets 部分告诉我。提前致谢。这是我的 Java 代码

import android.app.Activity;
import android.media.MediaPlayer;
import android.os.Bundle;
import android.view.View;
import android.widget.Button;


public class MainActivity extends Activity {

	private MediaPlayer mp;
	

	@Override
	protected void onCreate(Bundle savedInstanceState) {
		super.onCreate(savedInstanceState);
		setContentView(R.layout.activity_main);
		Button mButton = (Button) findViewById(R.id.btnStart);
		Button mButton1 = (Button) findViewById(R.id.btnStop);
		Button mButton2 = (Button) findViewById(R.id.btnPause);

		mp = new MediaPlayer();

		mButton.setOnClickListener(new View.OnClickListener() {

			@Override
			public void onClick(View v) {
				
				mp.start();
			}
		});
		mButton1.setOnClickListener(new View.OnClickListener() {

			@Override
			public void onClick(View v) {
				
				mp.stop();

			}
		});
		mButton2.setOnClickListener(new View.OnClickListener() {

			@Override
			public void onClick(View v) {
				MediaPlayer.create(MainActivity.this, R.raw.ch);
				mp.pause();

			}
		});

【问题讨论】:

    标签: java android audio mp3


    【解决方案1】:

    创建一个名为 AudioClip 的类

    public class AudioClip {
        public static boolean loop = false;
        public static MediaPlayer mediaPlayer;
        private static SoundPool soundPool;
        public static boolean isplayingAudio = false;
        public static void playAudio(Context c, int id) {
            mediaPlayer = MediaPlayer.create(c, id);
            soundPool = new SoundPool(4, AudioManager.STREAM_MUSIC, 100);
            if (!mediaPlayer.isPlaying()) {
                isplayingAudio = true;
                mediaPlayer.start();
                mediaPlayer.setLooping(loop);
            }
        }
        public static void stopAudio() {
            isplayingAudio = false;
            mediaPlayer.stop();
        }
    }
    

    在其他活动上播放音乐

    Context m = CuteActivity.this;
    AudioClip.playAudio(m,  R.raw.ch);\
    

    然后停止

                if (AudioClip.isplayingAudio) {
                        AudioClip.stopAudio();
                    }
    

    【讨论】:

      猜你喜欢
      • 2023-03-16
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 2014-11-11
      • 2013-03-10
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      相关资源
      最近更新 更多