android 播放提示音

MediaPlayer mp = new MediaPlayer();
mp.reset();                    
try
{
// 短信
mp.setDataSource(this,RingtoneManager.getDefaultUri(RingtoneManager.TYPE_NOTIFICATION ));
// 铃声
//mp.setDataSource(this,RingtoneManager.getDefaultUri(RingtoneManager.TYPE_RINGTONE));
// 自定义音频文件
//mp.setDataSource("/mnt/sdcard/AAAAA_CHENJIAN/test/music/1.mp3");
mp.prepare();
mp.start();
}
catch(Exception e)
{
e.printStackTrace();
}
### 实现音频播放功能 #### 使用 `MediaPlayer` 类实现基本的音频播放控制 为了在 Android 上实现音频播放,最常用的方式是通过 `MediaPlayer` 类。此组件提供了丰富的 API 来处理各种多媒体操作,包括准备、播放、暂停和停止等。 ```java // 创建并初始化 MediaPlayer 对象 private MediaPlayer mediaPlayer; @Override public void onCreate(){ super.onCreate(); if (mediaPlayer == null){ // 加载本地资源中的音频文件 mediaPlayer = MediaPlayer.create(context, R.raw.music_file); mediaPlayer.setOnCompletionListener(new MediaPlayer.OnCompletionListener() { @Override public void onCompletion(MediaPlayer mp) { // 当歌曲结束时触发的动作 } }); } } ``` 当应用程序首次启动时会调用 `onCreate()` 方法,在其中创建了一个新的 `MediaPlayer` 实例,并指定了要播放的声音文件位置[^2]。此外还设置了完成监听器以便于知道何时一首歌已经播送完毕。 对于网络流媒体内容,则需额外设置缓冲更新监听器: ```java mediaPlayer.setAudioStreamType(AudioManager.STREAM_MUSIC); mediaPlayer.setOnBufferingUpdateListener(new OnBufferingUpdateListener() { @Override public void onBufferingUpdate(MediaPlayer mp, int percent) { // 更新 UI 或者其他逻辑以反映当前缓存状态 } }); ``` 这允许应用跟踪正在下载的数据量百分比,从而提供更好的用户体验给用户[^3]。 #### 利用 Service 组件后台运行播放任务 为了让音乐可以在不依赖特定 Activity 的情况下持续播放,通常会选择在一个独立的服务 (`Service`) 中执行这些操作。这样即使用户离开了前台界面,也能继续听到声音。 ```xml <service android:name=".MusicService"/> ``` 定义好服务之后就可以像下面这样做进一步配置和服务交互: ```java Intent intent = new Intent(this, MusicService.class); startService(intent); // 停止服务 stopService(intent); ``` 如果希望更高效地管理异步任务,还可以考虑采用 `IntentService` 这种特殊形式的服务来进行优化[^4]。 ---
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包

打赏作者

七斗星

赏点银子去植发

¥1 ¥2 ¥4 ¥6 ¥10 ¥20
扫码支付:¥1
获取中
扫码支付

您的余额不足,请更换扫码支付或充值

打赏作者

实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值