`
119568242
  • 浏览: 430974 次
  • 性别: Icon_minigender_1
  • 来自: 深圳/湛江
社区版块
存档分类
最新评论

Android菜鸟日记 22音乐- MediaPlayer

 
阅读更多

Android菜鸟日记
22音乐- MediaPlayer

关于音乐:
指的是mp3,mid,wav等音频文件。

MediaPlayer
介绍:android系统中用于控制音频和视频的类。


MediaPlayer状态图如下:




当创建MediaPlayer对象时:
进入空闲态[ldle]

调用setDataSource(音频文件路径);路径为”/sdcard/xxx”
进入initialized[初始化状态]

调用prepare()
进入prepared状态 【重点:如若要start()则必须要进入prepared状态】

其他看上表吧。

特别注意:
MID文件和其他文件有不同。
MID文件如果stop后不能直接prepare()回到prepared状态。[会报io异常]。
所以:
MID文件stop后,调用reset(),回到空闲态[ldle];
然后再重新setDataSource;再prepare,进入prepared态。

之后再调用star。


代码

MeidaPlayerActivityActivity
package com.lurencun.test;

import java.io.IOException;

import android.app.Activity;
import android.media.AudioManager;
import android.media.MediaPlayer;
import android.media.SoundPool;
import android.os.Bundle;
import android.util.Log;
import android.view.View;
import android.widget.Button;
import android.widget.Toast;

public class MeidaPlayerActivityActivity extends Activity {
	private Button bt1 = null;
	private Button bt2 = null;
	private Button bt3 = null;
	private Button bt4 = null;
	private Button bt5 = null;
	private Boolean playing = false;
	private MediaPlayer mp = new MediaPlayer();
	private AudioManager am = null;

	public void onCreate(Bundle savedInstanceState) {
		super.onCreate(savedInstanceState);
		setContentView(R.layout.main);
		bt1 = (Button) this.findViewById(R.id.bt1);
		bt2 = (Button) this.findViewById(R.id.bt2);
		bt3 = (Button) this.findViewById(R.id.bt3);
		bt4 = (Button) this.findViewById(R.id.bt4);
		bt5 = (Button) this.findViewById(R.id.bt5);
		try {
			am = (AudioManager) this.getSystemService(this.AUDIO_SERVICE);
			mp.setDataSource("/sdcard/1.mp3");
			mp.prepare();
		} catch (Exception e) {
			// TODO Auto-generated catch block
			e.printStackTrace();
		}
	}

	public void funClick(View v) {
		int temp = v.getId();

		switch (temp) {
		case R.id.bt1:
			Log.v("myTag", "" + mp.isPlaying());
			if (mp.isPlaying()) {
				Toast.makeText(this, "正在播放", Toast.LENGTH_SHORT).show();
			} else {
				
				mp.start();
				playing = true;
				Toast.makeText(this, "开始播放", Toast.LENGTH_SHORT).show();
			}
			break;
		case R.id.bt2:
			if (mp.isPlaying()) {
				mp.pause();
				this.funTosat("暂停播放");
				playing = false;
			} else {
				this.funTosat("暂停中");
			}
			break;
		case R.id.bt3:
			mp.stop();
			try {
				mp.prepare();
				mp.seekTo(0);
				Log.v("myTag", "111111111111111111111");
			}  catch (Exception e) {
				// TODO Auto-generated catch block
				Log.v("myTag", e.toString());
				e.printStackTrace();
			}
			
			
			this.funTosat("已停止");
			playing = false;
			
			break;
		case R.id.bt4:
		
			am.adjustVolume(AudioManager.ADJUST_RAISE, 0);
			// 校准音量
			// 参数一是调节方式[加减] 参数二是 调节幅度[0,1,……]
			break;
		case R.id.bt5:
			am.adjustVolume(AudioManager.ADJUST_LOWER, 0);
			break;

		}
	}

	public void funTosat(String Text) {
		Toast.makeText(this, Text, Toast.LENGTH_SHORT).show();
	}

}

 


2011-10-12
poolo

 

  • 大小: 23 KB
分享到:
评论

相关推荐

    Android 中级教程之------Android MediaPlayer播放mp3的实例

    了解这个知识点对于Android开发者来说至关重要,特别是对于那些希望构建音乐播放器或者需要在应用中集成音频播放功能的开发者。 首先,我们来看一下MediaPlayer的基本使用步骤: 1. 初始化MediaPlayer对象:通常,...

    android-mediaplayer_android源码_

    Android提供了内置的`MediaPlayer`类,用于处理音频、视频的播放任务。本示例源代码着重解析`MediaPlayer`在Android系统中的实现,帮助开发者深入理解其工作原理和使用方法。 `MediaPlayer`类是Android SDK中的核心...

    Java-MediaPlayer源码

    Android系统中的`MediaPlayer`支持常见的音频和视频格式,如MP3、AAC、MP4等。 8. **自定义渲染器**: - 对于高级用户,可以通过实现`SurfaceHolder.Callback`接口,为`MediaPlayer`提供自定义的渲染表面,从而...

    jw-mediaplayer-5.2.rc

    jw-mediaplayer-5.2.rcjw-mediaplayer-5.2.rcjw-mediaplayer-5.2.rcjw-mediaplayer-5.2.rcjw-mediaplayer-5.2.rcjw-mediaplayer-5.2.rcjw-mediaplayer-5.2.rc

    Android MediaPlayer Playback---多媒体开发应用程序接口

    在Android平台上,多媒体...总结来说,`Android MediaPlayer`是Android平台多媒体开发的重要部分,理解和熟练使用它可以创建功能丰富的音乐和视频播放应用。同时,合理利用第三方`jar`库可以进一步优化和扩展播放功能。

    从头学Android之多媒体--使用MediaPlayer播放音频示例代码

    `MediaPlayer`类是Android提供的一个核心组件,专门用于播放各种音频文件。本篇将深入讲解如何使用`MediaPlayer`来实现音频播放,并通过示例代码帮助理解其工作原理。 `MediaPlayer`是一个强大的音频播放器,它可以...

    Android应用开发mediaplayer播放音频,带有进度条

    在Android应用开发中,MediaPlayer类是用于播放各种音频和视频资源的核心组件。在这个特定的示例中,我们关注的是如何使用MediaPlayer与进度条(SeekBar)结合,创建一个简单的音频播放器。以下是对这个Android应用...

    Android程序设计-MediaPlayer介绍.pptx

    在Android程序设计中,MediaPlayer是Android SDK提供的重要组件,用于播放音频和视频文件。这个组件支持多种媒体格式,包括MP3、AAC、WAV、MP4等,使得开发者能够轻松地在应用程序中集成多媒体功能。以下是对...

    ffmpeg-MediaPlayer.zip

    在本项目"ffmpeg-MediaPlayer.zip"中,开发者利用FFmpeg库创建了一个简单的视频播放器,特别适合初学者了解如何在Android平台上使用NDK进行原生代码开发。 NDK(Native Development Kit)是Google提供的一个开发...

    Android实现简单音乐播放器(MediaPlayer)

    "Android实现简单音乐播放器(MediaPlayer)" 以下是Android实现简单音乐播放器(MediaPlayer)的相关知识点: 标题解释:Android实现简单音乐播放器(MediaPlayer)是指使用Android系统实现一个简单的音乐播放器,使用...

    Android MediaPlayer 自定义循环次数

    在Android开发中,MediaPlayer是处理音频和视频播放的核心类之一,它提供了丰富的API来控制多媒体文件的播放。本文将深入探讨如何使用MediaPlayer自定义循环播放的次数,这在需要重复播放特定音频片段的应用场景中...

    QT编写的多媒体播放器源码--mediaplayer

    QT编写的多媒体播放器源码——mediaplayer项目解析 QT是一个流行的开源C++图形用户界面库,由Trolltech公司开发,现由The Qt Company维护。它提供了一整套工具,包括用于创建桌面、移动和嵌入式平台应用程序的框架...

    Android实例之MediaPlayer播放音乐和视频

    在这个"Android实例之MediaPlayer播放音乐和视频"中,我们将深入探讨如何利用MediaPlayer类实现多媒体的播放功能。 首先,MediaPlayer是Android SDK提供的一个类,它可以播放本地或网络上的音频和视频资源。在...

    react-native-mediaplayer:适用于React Native的全屏媒体播放器

    react-native-mediaplayer 用于React Native的简单的全屏媒体播放器。 安装 使用npm与npm install --save react-native-mediaplayer一起npm install --save react-native-mediaplayer 。 需要React Native> = 0.4.0...

    Android多媒体功能开发-用MediaPlayer播放音频的例子

    本篇文章将深入探讨如何使用`MediaPlayer`类来播放音频,这是Android SDK提供的一种基础且强大的工具,用于处理各种音频格式。`MediaPlayer`不仅可以播放本地存储的音频文件,还能处理网络流媒体资源。 首先,了解`...

    Android MediaPlayer简单音乐播放器

    在Android平台上,开发一个简单的音乐播放器应用是一个常见的任务,主要涉及到的核心组件是`MediaPlayer`。这个组件提供了音频和视频播放的功能,对于构建一个基础的音乐播放器来说,至关重要。以下将详细介绍`...

    Android MediaPlayer播放mp3的实例.doc

    "Android MediaPlayer播放mp3的实例" Android 中的 MediaPlayer 是一个功能强大且复杂的媒体播放器,可以播放音频和视频文件。在 Android 的界面上,Music 和 Video 两个应用程序都是调用 MediaPlayer 实现的。...

    Android 使用MediaPlayer播放视频

    `MediaPlayer`是Android SDK提供的一种核心组件,专门用于播放音频和视频文件。在这个场景中,我们将详细探讨如何使用`MediaPlayer`来播放视频,同时结合`SurfaceView`来显示视频画面。本文将深入解析相关知识点,并...

Global site tag (gtag.js) - Google Analytics