package cn.itcast.playonline;import java.io.IOException;import android.app.Activity;import android.media.AudioManager;import android.media.MediaPlayer;import android.media.MediaPlayer.OnPreparedListener;import android.os.Bundle;import android.view.SurfaceHolder;import android.view.SurfaceView;import android.view.View;import android.widget.EditText;public class PlayonlineActivity extends Activity {EditText et_path;SurfaceView sv;SurfaceHolder holder;MediaPlayer player;@Overridepublic void onCreate(Bundle savedInstanceState) {super.onCreate(savedInstanceState);setContentView(R.layout.main);et_path = (EditText) this.findViewById(R.id.editText1);sv = (SurfaceView) this.findViewById(R.id.sv);holder = sv.getHolder();/* 下面设置Surface不维护自己的缓冲区,而是等待屏幕的渲染引擎将内容推送到用户面前 */holder.setType(SurfaceHolder.SURFACE_TYPE_PUSH_BUFFERS);}public void play(View view) {try {String path = et_path.getText().toString().trim();player = new MediaPlayer();player.setDataSource(path);player.setAudioStreamType(AudioManager.STREAM_MUSIC);player.setDisplay(holder);player.prepareAsync();player.setOnPreparedListener(new OnPreparedListener() {public void onPrepared(MediaPlayer mp) {player.start();}});} catch (Exception e) {System.out.println("error ");e.printStackTrace();}}}

更多相关文章

  1. Android视频录制
  2. Android播放视频(二)
  3. Android图形系统(八)-app与SurfaceFlinger共享UI元数据过程
  4. [置顶] 关于Android图形系统的一些事实真相
  5. Android系统Surface机制的SurfaceFlinger服务渲染应用程序UI的过
  6. Android应用程序请求SurfaceFlinger服务渲染Surface的过程分析
  7. Android应用程序与SurfaceFlinger服务的关系概述和学习计划
  8. Android应用程序请求SurfaceFlinger服务渲染Surface的过程分析
  9. android经典优化点

随机推荐

  1. R文件没有生成或报错
  2. Android SDK无法更新终极解决方式
  3. Android 读取XML的两种方法。
  4. Ubuntu 12.04 Desktop 版本编译 Android
  5. Android SQLite数据库解析并使用两种方法
  6. 【Android-Third】Android三方框架相关
  7. How to generate links to the android C
  8. android 编译学习
  9. Android通知栏学习(基础篇)
  10. 【Android】Android SurfaceFlinger之Sur