android典型用户之多媒体播放
|Word count:469|Reading time:2min|Post View:
android 典型用户之多媒体播放
#移动开发 #Android
1. android 多媒体介绍
android 的多媒体功能基于 PacketVideo 的 OpenCORE
。这些库支持播放和录制许多流行的音频和视频格式,以及静态图像文件,包括
MPEG4、H.264、MP3、AAC、AMR
、JPG、PNG,底级实现在源码的 external/opencore 中
2. android 框架对多媒体的支持
应用程序调用接口
frameworks/base/media/java/android/media/MediaPlayer.java
3. 例程
功能
播放编辑框中指定的多媒体文件
可从此处下载可独立运行的代码
[http://download.csdn.net/source/2602127
](http://download.csdn.net/source/2602127)
- 核心代码及说明
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 32 33 34 35 36 37 38 39 40 41 42 43 44 45 46 47 48 49 50 51 52 53 54 55 56 57 58 59 60 61 62 63 64 65 66 67 68 69 70 71 72 73 74 75 76 77 78 79 80 81 82 83 84 85 86 87 88 89 90 91 92 93 94 95 96 97 98 99 100 101 102 103 104 105 106 107 108 109 110 111 112 113 114 115 116 117 118 119 120 121
| _ package com.android.mymedia; _
_ _
_ import android.app.Activity; _
_ import android.os.Bundle; _
_ import android.widget.EditText; _
_ import android.widget.Button; _
_ import android.view.View.OnClickListener; _
_ import android.view.View; _
_ import android.media.MediaPlayer; _
_ import android.net.Uri; _
_ _
_ public class MyMediaActivity extends Activity { _
_ private Button mPlayBtn; _
_ private Button mStopBtn; _
_ private EditText mEditText; _
_ private MediaPlayer mMediaPlayer; _
_ _
_ @Override _
_ public void onCreate(Bundle savedInstanceState) { _
_ super.onCreate(savedInstanceState); _
_ setContentView(R.layout.main); _
_ mPlayBtn = (Button) this.findViewById(R.id.play_button); _
_ mStopBtn = (Button) this.findViewById(R.id.stop_button); _
_ mEditText = (EditText) this.findViewById(R.id.edit_text); _
_ _ _ mPlayBtn.setOnClickListener(buttonListener); _
_ mStopBtn.setOnClickListener(buttonListener); _
_ _ _ mEditText.setText("/sdcard/test.mp3"); _
_ } _
_ _
_ @Override _
_ public void onDestroy() { _
_ stopMedia(); _
_ super.onDestroy(); _
_ } _
_ _
_ private OnClickListener buttonListener = new OnClickListener() { _
_ public void onClick(View v) { _
_ if (mPlayBtn.equals(v)) { _
_ playMedia(); _
_ } else if (mStopBtn.equals(v)) { _
_ stopMedia(); _
_ } _
_ } _
_ }; _
_ _
_ private void playMedia() { _
_ stopMedia(); _
_ Uri playUri = Uri.parse(String.valueOf(mEditText.getText())); _
_ mMediaPlayer = MediaPlayer.create(this, playUri); _
_ mMediaPlayer.start(); _
_ } _
_ _
_ private void stopMedia() { _
_ if (mMediaPlayer != null) { _
_ if (mMediaPlayer.isPlaying()) _
_ mMediaPlayer.stop(); _
_ mMediaPlayer.release(); _
_ mMediaPlayer = null; _
_ } _
_ } _
_ } _
|
4. 参考:
Android 源码自带的多媒体播放例程
development/samples/ApiDemos/src/ocm/example/android/apis/media/MediaPlayerDemo*
流媒体例程
[http://kuikui.javaeye.com/blog/325916
](http://kuikui.javaeye.com/blog/325916)
(转载请注明出处: http://xy0811.spaces.live.com)