安卓-音视频

Radiom

如果日志不显示
找到任务管理器的adb.exe和eclipse关闭它们
再重启eclipse

MediaPlayer
soundPool类、JetPlayer类、MediaPlayer

重点:生命周期

  • idle状态:加载音乐之前的状态。要先调用reset()到idle状态才能继续操作
  • end状态:通过release()进入
  • Initialized初始化状态:此时要播放的文件已经设置好了
  • Prepared:初始化后还需调用prepare()和。。
  • preparing状态和prepareasnyc(异步准备状态)一起使用
  • started状态 在该状态下调用seekto()(//跳到哪个点)或者start()均可以让MediaPlayer停留在这一状态
  • paused状态 可以调用seekto()和start()
  • stop状态
  • playbackCompleted状态
  • error状态

一般使用步骤

  • 声明MediaPlayer类对象
  • 根据本地资源或网络资源创建对象
  • 设置循环模式
  • 启动预播放,进入准备状态
  • 声音播放,暂停或重播
  • 声音的停止和卸载

ogg结尾的是音频资源(相对占用的资源比较少,与MP3对应)

通过静态方法create获得MediaPlayer

1
2
3
4
5
6
mediaplayer mp=new mediaplayer();
String path="..."
mp.setDataRourse(path);

//传值的作用,intent不能在内容提供者中使用
Uri uri=Uri.parse(path)//内容提供者中会介绍

create默认有预播放功能,可以直接进行播放
setLooping设置循环模式

分包:

  • 继承Activity的类 放到activity中
  • 继承view类 放到视图包view中
  • 声音 放到sound包中
  • 数据库 放到db包中
  • 适配器(写道外面,不写内部类的情况)baseAdapter和BaseExpandAdapter放到adapter
  • 只有成员变量和get和set方法的类 放到实体(entity)包中

I:接口 A:抽象类 S:静态 F:常量

AudioManager类,提供访问控制音量和铃声模式的操作