android中的多媒体应用MediaPlayer
2011-01-22 18:28
197 查看
MediaPlayer可以播放音频和视频,另外也可以通过VideoView来播放视频,虽然VideoView比MediaPlayer简单易用,但定制性不如用MediaPlayer,要视情况选择了。MediaPlayer播放音频比较简单,但是要播放视频就需要SurfaceView。SurfaceView比普通的自定义View更有绘图上的优势,它支持完全的OpenGL ES库。
迷你音乐播放器
/Chapter11_Media_MiniPlayer/src/com/amaker/test/MainActivity.java
/Chapter11_Media_MiniPlayer/res/layout/main.xml
/Chapter11_Media_MiniPlayer/AndroidManifest.xml
迷你音乐播放器
/Chapter11_Media_MiniPlayer/src/com/amaker/test/MainActivity.java
代码 package com.amaker.test; import android.app.Activity; import android.app.AlertDialog; import android.media.MediaPlayer; import android.os.Bundle; import android.view.View; import android.widget.ImageButton; public class MainActivity extends Activity implements MediaPlayer.OnCompletionListener { private ImageButton play,pause,stop; private MediaPlayer mp; @Override public void onCreate(Bundle savedInstanceState) { super.onCreate(savedInstanceState); setContentView(R.layout.main); play = (ImageButton)findViewById(R.id.play); pause = (ImageButton)findViewById(R.id.pause); stop = (ImageButton)findViewById(R.id.stop); play.setOnClickListener(new View.OnClickListener() { public void onClick(View view) { play(); } }); pause.setOnClickListener(new View.OnClickListener() { public void onClick(View view) { pause(); } }); stop.setOnClickListener(new View.OnClickListener() { public void onClick(View view) { stop(); } }); setup(); } @Override public void onDestroy() { super.onDestroy(); if (stop.isEnabled()) { stop(); } } public void onCompletion(MediaPlayer mp) { stop(); } private void play() { mp.start(); play.setEnabled(false); pause.setEnabled(true); stop.setEnabled(true); } private void stop() { mp.stop(); pause.setEnabled(false); stop.setEnabled(false); try { mp.prepare(); mp.seekTo(0); play.setEnabled(true); } catch (Throwable t) { error(t); } } private void pause() { mp.pause(); play.setEnabled(true); pause.setEnabled(false); stop.setEnabled(true); } private void loadClip() { try { mp=MediaPlayer.create(this, R.raw.test); mp.setOnCompletionListener(this); } catch (Throwable t) { error(t); } } private void setup() { loadClip(); play.setEnabled(true); pause.setEnabled(false); stop.setEnabled(false); } private void error(Throwable t) { AlertDialog.Builder builder=new AlertDialog.Builder(this); builder .setTitle("报错啦!") .setMessage(t.toString()) .setPositiveButton("确定", null) .show(); } }
/Chapter11_Media_MiniPlayer/res/layout/main.xml
代码 <?xml version="1.0" encoding="utf-8"?> <LinearLayout xmlns:android="http://schemas.android.com/apk/res/android" android:orientation="vertical" android:layout_width="fill_parent" android:layout_height="fill_parent"> <TextView android:layout_width="fill_parent" android:layout_height="wrap_content" android:text="迷你音乐播放器" /> <LinearLayout android:orientation="horizontal" android:layout_width="fill_parent" android:layout_height="fill_parent"> <ImageButton android:id="@+id/play" android:layout_width="wrap_content" android:layout_height="wrap_content" android:src="@drawable/play" /> <ImageButton android:id="@+id/pause" android:layout_width="wrap_content" android:layout_height="wrap_content" android:src="@drawable/pause" /> <ImageButton android:id="@+id/stop" android:layout_width="wrap_content" android:layout_height="wrap_content" android:src="@drawable/stop" /> </LinearLayout> </LinearLayout>
/Chapter11_Media_MiniPlayer/AndroidManifest.xml
代码 <?xml version="1.0" encoding="utf-8"?> <manifest xmlns:android="http://schemas.android.com/apk/res/android" package="com.amaker.test" android:versionCode="1" android:versionName="1.0"> <application android:icon="@drawable/icon" android:label="@string/app_name"> <activity android:name=".MainActivity" android:label="@string/app_name"> <intent-filter> <action android:name="android.intent.action.MAIN" /> <category android:name="android.intent.category.LAUNCHER" /> </intent-filter> </activity> </application> <uses-sdk android:minSdkVersion="3" /> </manifest>
相关文章推荐
- Android 多媒体应用——MediaPlayer音频播放
- android中的多媒体应用MediaPlayer
- Android开发--多媒体应用开发(一)--MediaPlayer的使用介绍
- Android 多媒体应用——MediaPlayer与SurfaceView播放视频
- Android开发--多媒体应用开发(一)--MediaPlayer的使用介绍
- Android多媒体应用使用MediaPlayer播放音频
- 【Android开发】多媒体应用开发-使用MediaPlayer播放音频
- Android多媒体开发笔记[3]-- 上层mediaPlayer 是如何调到Stagefright的
- Android 多媒体应用:MediaRecorder 录制音视频 之 音频
- 从头学Android之多媒体--使用MediaPlayer和SurfaceView播放视频
- Android之多媒体MediaPlayer(一个简单的音乐播放器)
- 【Android】多媒体编程——MediaPlayer音频播放
- Android多媒体应用——通知的使用(Notification)
- Android多媒体开发 android mediaplayer
- Android 多媒体应用:调用摄像头拍照
- android多媒体音乐(MediaPlayer)播放器制作代码
- android多媒体学习系列(一)--MediaPlayer的生命周期
- Android知识点之多媒体应用开发
- 【Android 多媒体开发】 MediaPlayer 状态机 接口 方法 解析
- Android入门笔记 - 多媒体 - MediaPlayer