android自动播放音乐代码,Android MediaPlayer实现音乐播放器实例代码
Android MediaPlayer实现音乐播放器
1、布局文件
android:layout_width="fill_parent"
android:layout_height="fill_parent"
android:orientation="vertical" >
android:id="@+id/hint"
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:padding="10px"
android:text="单击“开始”按钮播放音频" />
android:id="@+id/linearLayout1"
android:layout_width="match_parent"
android:layout_height="wrap_content" >
android:id="@+id/button1"
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:text="播放" />
android:id="@+id/button2"
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:enabled="false"
android:text="暂停" />
android:id="@+id/button3"
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:enabled="false"
android:text="停止" />
2、MainActivity的成员变量
private MediaPlayer player;//MediaPlayer对象
private boolean isPause = false;//是否暂停
private File file;//要播放的音频文件
private TextView hint;//声明显示提示信息的文本框
3、onCreate()方法中获取组件
final Button button1 = (Button)findViewById(R.id.button1);//获取“播放”按钮
final Button button2 = (Button)findViewById(R.id.button2);//获取“暂停/继续”按钮
final Button button3 = (Button)findViewById(R.id.button3);//获取“停止”按钮
hint = (TextView)findViewById(R.id.hint);//获取用于显示提示信息的文本框
file = new File("/storage/emulated/0/qqmusic/song/乔维怡 - 白月光[mqms2].mp3");//获取要播放的文件
if(file.exists()){
player = MediaPlayer.create(this, Uri.parse(file.getAbsolutePath()));//创建MediaPlayer独享
}else{
hint.setText("要播放的音频文件不存在!");
button1.setEnabled(false);
return;
}
4、编写play()方法
private void play(){
try {
player.reset();
player.setDataSource(file.getAbsolutePath());//重新设置要播放的音频
player.prepare();//预加载音频
player.start();//开始播放
hint.setText("正在播放音频.....");
} catch (Exception e) {
e.printStackTrace();
}
}
5、为MediaPlayer对象添加监听事件,播完重新播放
player.setOnCompletionListener(new OnCompletionListener() {
@Override
public void onCompletion(MediaPlayer mp) {
play();//重新开始播放
}
});
6、为播放添加单击事件监听器
button1.setOnClickListener(new OnClickListener() {
@Override
public void onClick(View v) {
play();//开始播放音乐
if(isPause){
button2.setText("暂停");
isPause = false;//设置暂停标记变量的值为false
}
button2.setEnabled(true);//“暂停/继续”按钮可用
button3.setEnabled(true);//"停止"按钮可用
button1.setEnabled(false);//“播放”按钮不可用
}
});
7、在“暂停/继续”按钮添加单击事件监听器
button2.setOnClickListener(new OnClickListener() {
@Override
public void onClick(View v) {
if(player.isPlaying()&&!isPause){
player.pause();//暂停播放
isPause = true;
((Button)v).setText("继续");
hint.setText("暂停播放音频...");
button1.setEnabled(true);//“播放”按钮可用
}else{
player.start();//继续播放
((Button)v).setText("暂停");
hint.setText("正在播放音频...");
isPause = false;
button1.setEnabled(false);//“播放”按钮不可用
}
}
});
8、停止按钮
button3.setOnClickListener(new OnClickListener() {
@Override
public void onClick(View v) {
player.stop();//停止播放
hint.setText("停止播放音频...");
button2.setEnabled(false);//“暂停/继续”按钮不可用
button3.setEnabled(false);//“停止”按钮不可用
button1.setEnabled(true);//“播放”按钮可用
}
});
9、重写Activity的onDestroy()方法
@Override
protected void onDestroy() {
if(player.isPlaying()){
player.stop();//停止音频的播放
}
player.release();//释放资源
super.onDestroy();
}
感谢阅读,希望能帮助到大家,谢谢大家对本站的支持!
android自动播放音乐代码,Android MediaPlayer实现音乐播放器实例代码相关推荐
- android音乐播放器案例,Android MediaPlayer实现音乐播放器实例代码
Android MediaPlayer实现音乐播放器 1.布局文件 android:layout_width="fill_parent" android:layout_height ...
- 安卓java自实现mp3播放器,Android MediaPlayer实现音乐播放器实例代码
Android MediaPlayer实现音乐播放器 1.布局文件 android:layout_width="fill_parent" android:layout_height ...
- android 自动下一首,Android播播放完SD卡指定文件夹音乐之后,自动播放下一首
最近做一个项目,需要连续播放音乐,播放完一首歌之后,自动播放完下一首歌.不要重复播放. 代码如下: package com.example.asyncplayer_ex; import java.io ...
- android 自动挂断,[转]android 来电自动接听和自动挂断
注意:android2.3版本不支持下面的自动接听方法.(会抛异常:java.lang.SecurityException: Neither user xxxxx nor current proces ...
- android 自动读取短息,Android实现短信验证码自动拦截读取功能
本文实例为大家分享了Android短信验证码自动拦截读取 的具体代码,供大家参考,具体内容如下 知识准备: 1.观察者模式的理解[文章稍后来到~~] 2.Android的Cursor使用[Androi ...
- android webview 多文件上传,Android中的webview支持页面中的文件上传实例代码
Android webview在默认情况下是不支持网页中的文件上传功能的: 如果在网页中有,在android webview中访问时也会出现浏览文件的按钮 但是点击按钮之后没有反应... 那么如何能够 ...
- android自动登录实现框架,Android如何设计并且实现一个注入框架
1.小强先定了一个小小的目标,让下面的代码可以直接Run起来 public class MainActivity extends InjectorActivity { InjectedObject i ...
- android自动登录简书,Android开发之简单登录界面
用户界面基础 Android系统的四大组件分别是活动(Activity).服务(Service).广播接收器(Broadcast Receiver).内容提供器(Content Provider). ...
- android 自动备份到局域网,Android和PC端通过局域网文件同步
本文为大家分享了Android和PC端通过局域网文件同步的具体代码,供大家参考,具体内容如下 public class FileOptions { public String name; public ...
- java wed登录面 代码_JavaWeb实现用户登录注册功能实例代码(基于Servlet+JSP+JavaBean模式)...
下面通过通过图文并茂的方式给大家介绍JavaWeb实现用户登录注册功能实例代码,一起看看吧. 一.Servlet+JSP+JavaBean开发模式(MVC)介绍 Servlet+JSP+JavaBea ...
最新文章
- mos管开关电路_MOS管的知识,看这一篇就可以了
- 编程生涯 21 载,那些我踩过的坑
- SAGAN生成更为精细的人脸图像(tensorflow实现)
- 【机器学习】机器学习从零到掌握之三 -- 教你使用K近邻算法改进约会网站
- MySQL无中心化集群_MySQL Plus 如何做到无中心化、数据强一致性、秒级切换?
- 支付宝最不想看到的:当“集五福”变成赚钱生意 有人日入千元!
- MyEclipse10 中的两种FreeMarker插件的安装与配置
- client does not support authentication
- canvas一些属性
- p12解析流程_iOS证书及描述文件制作流程详解
- 红米note5系统Android11,红米Note5-MIUI11 开发版|超多功能|Xposed|ROOT|桌面布局-刷机之家...
- 【应用软件】用jpg+swf制作gif动感小图(附带AVI转gif技巧)
- NotePad++ 正则表达式
- 嵌入式linux下的触屏模拟
- 字谜游戏(b)C语言
- conda创建管理虚拟环境
- 徐州市纳西科技贸易有限公司 拖欠工资 李东来
- 敏捷团队的质量保障赋能
- 《操作系统导论》学习笔记(六):逻辑地址空间管理
- csp-202206
热门文章
- ckplayer6.8 php播放,ckplayer
- otlv4 mysql_OTL 使用记录
- android常用快捷键大全,AndroidStudio 快捷键使用总结大全
- 债券的即期收益率,到期收益率,远期收益率有什么区别?
- linux怎么打开隐藏文件夹,如何在文件管理器中隐藏文件和文件夹
- 新建linux用户不能登录用户,Linux下useradd命令创建的用户不能登录的问题
- Maya入门教程— 如何使用MAYA贴图?MAYA给模型贴图教程
- matlab——for循环
- BZOJ 3097: Hash Killer I【构造题,思维题】
- 实施(运维)工程师 笔试选择题