Android 背景音乐播放

1. 主要 引用 这个类(AudioService.java)

 1 public class AudioService extends Service implements
 2         MediaPlayer.OnCompletionListener {
 3     // 实例化MediaPlayer对象
 4     MediaPlayer player;
 5     private final IBinder binder = new AudioBinder();
 6
 7     @Override
 8     public IBinder onBind(Intent intent) {
 9         return binder;
10     }
11
12     public void onCreate() {
13         super.onCreate();
14         // 从raw文件夹中获取一个应用自带的mp3文件
15         player = MediaPlayer.create(this, R.raw.qq);
16         player.setOnCompletionListener(this);
17         player.setLooping(true);
18     }
19
20     @Override
21     public int onStartCommand(Intent intent, int flags, int startId) {
22         super.onStartCommand(intent, flags, startId);
23         if (!player.isPlaying()) {
24             new MusicPlayThread().start();
25         }
26         else player.isPlaying();
27         return START_STICKY;
28     }
29
30
31     /**
32      * 当Audio播放完的时候触发该动作
33      */
34     public void onCompletion(MediaPlayer mp) {
35         stopSelf();// 结束了,则结束Service
36     }
37
38     public void onDestroy() {
39         super.onDestroy();
40         if (player.isPlaying()) {
41             player.stop();
42         }
43         player.release();
44     }
45
46     // 为了和Activity交互,我们需要定义一个Binder对象
47     public class AudioBinder extends Binder {
48         // 返回Service对象
49         public AudioService getService() {
50             return AudioService.this;
51         }
52     }
53
54     private class MusicPlayThread extends Thread {
55         public void run() {
56             if (!player.isPlaying()) {
57                 player.start();
58             }
59         }
60     }
61
62 }

AudioService.java

2.自动播放 功能用了 SharedPreferences

3. 在AndroidManifest.xml中的</activity>下面加上

 <service android:name="com.example.musicServer.AudioService" ></service>

4.界面运行图

时间: 2024-11-13 05:18:54

Android 背景音乐播放的相关文章

android SoundPool播放音效

MediaPlayer的缺点: 资源占用量高,延时时间较长 不支持多个音效同时播放 SoundPool主要用于播放一些较短的声音片段,CPU资源占用率低和反应延时小,还支持自行色设置声音的品质,音量,播放比率等参数,避免使用SoundPool来播放歌曲或者做游戏背景音乐,只有那些短促的密集的声音才考虑使用SoundPool播放 构造器: public SoundPool (int maxStreams, int streamType, int srcQuality) Parameters max

FFmpeg总结(十一)用ffmpeg进行转格式,Android下播放网络音频流

思路: 1.mp3转成pcm(音频数据),ffmpeg做的事 2.OpenSL ES引擎创建AudioPlayer,实际调用了AudioTrack 遇到的错误: Error #include nested too deeply 原因:c文件互相引用 解决方案: 1.将两个头文件共用的那一部分抽出来单独建一个头文件. 2.加预处理#ifndef.. #define-#endif x86平台没有编译出来so,怀疑存在版本不兼容,编译别的相关so,x86下没有异常.有空这里再更新下原因 studio写

android音乐播放器开发教程

android音乐播放器开发教程 android音乐播放器开发教程,布布扣,bubuko.com

Android 基于ijkplayer+Rxjava+Rxandroid+Retrofit2.0+MVP+Material Design的android万能播放器aaa

MDPlayer万能播放器 MDPlayer,基于ijkplayer+Rxjava+Rxandroid+Retrofit2.0+MVP+Material Design的android万能播放器,可以播放本地和在线视频,可以浏览宅男杀手妹纸图片,UI设计遵循 Material Design. GitHub地址:https://github.com/Dawish/MDPlayer UI浏览:         1.UI设计: 列表使用RecyclerView,item为CardView并设置rippl

使用Vitamio打造自己的Android万能播放器

前言 虽然Android已经内置了VideoView组件和MediaPlayer类来支持开发视频播放器,但支持格式.性能等各方面都十分有限,这里与大家一起利用免费的Vitamio来打造属于自己的Android万能播放器! 声明 欢迎转载,但请保留文章原始出处:) 博客园:http://www.cnblogs.com 农民伯伯: http://over140.cnblogs.com 正文 一.实现目标 1.1 支持格式 支持主流的视音频格式:mp3/mp4/mkv/avi/3gp/rmvb/mov

如何在Android中播放网络传输过来的AAC音频?

============问题描述============ 如何在Android中播放网络传输过来的AAC音频?每个包都有ADTS头的. ============解决方案1============ 如果是应用的话,直接设置MediaPlayer setDataSource设置为网络音频的uri,然后prepareAsync(), prepare完成后调用start不就可以了吗? framework层的话还是要用aacdecoder进行解码播放,要么用软件解码,要么用硬件解码.

Vitamio打造自己的Android万能播放器

前言 虽然Android已经内置了VideoView组件和MediaPlayer类来支持开发视频播放器,但支持格式.性能等各方面都十分有限,这里与大家一起利用免费的Vitamio来打造属于自己的Android万能播放器! 声明 欢迎转载,但请保留文章原始出处:) 石攻玉 :http://www.cnblogs.com/stone4/ 正文 一.实现目标 1.1 支持格式 支持主流的视音频格式:mp3/mp4/mkv/avi/3gp/rmvb/mov/flv等. 1.2 支持功能 1.2.1 当然

[Android]音乐播放器总结

1. MediaPlayer要播放的文件主要包括3个来源:a. 用户在应用中事先自带的resource资源例如:mp = MediaPlayer.create(this, R.raw.test);b. 存储在SD卡或其他文件路径下的媒体文件例如:mp.setDataSource("/sdcard/test.mp3");c. 网络上的媒体文件例如:mp.setDataSource("http://www.citynorth.cn/music/confucius.mp3"

小程序页面可以放置转发按钮,同时开放了微信运动步数背景音乐播放等更多基础能力

小程序页面可以放置转发按钮,同时开放了微信运动步数背景音乐播放等更多基础能力.小程序转发更简单了:小程序页面可以放置转发按钮.在小程序页面右上角“…”的转发功能基础上,新增在页面内放置转发按钮,用户点击后,即可将喜欢的内容分享给好友或群聊,体验更加流畅.开发者可以根据小程序的功能,展示最适合的按钮形式. 使用指引 转发按钮,旨在帮助用户更流畅地与好友分享内容和服务.转发,应是用户自发的行为,且在需要时触手可及.开发者在使用时若遵从以下指引,会得到更佳的用户体验. 含义清晰:明确.一目了然的图形按