放置我们的媒体文件(jack.mp3)


Android音乐播放器简单示例_第1张图片

编写我们的媒体Service类

package org.snailteam;import android.app.Service;import android.content.Intent;import android.media.MediaPlayer;import android.os.IBinder;import android.util.Log;import android.widget.Toast;public class MediaPlayerService extends Service {private static final String TAG = "音乐播放器服务";MediaPlayer player;public IBinder onBind(Intent intent) {return null;} public void onCreate() {//服务初始化, Toast.makeText(this, "MediaPlayerService created", Toast.LENGTH_LONG).show();        Log.i(TAG, "onCreate");            player = MediaPlayer.create(this,R.raw.jack);//此处引用到我们的mp3文件,raw文件夹的。        player.setLooping(false);                } public void onStart(Intent intent, int startId) { Toast.makeText(this, " MediaPlayerService Start", Toast.LENGTH_LONG).show();        Log.i(TAG, "onStart");        player.start();} public void onDestroy() { Toast.makeText(this, " MediaPlayerService Stoped", Toast.LENGTH_LONG).show();        Log.i(TAG, "onDestroy");        player.stop();}}

输入代码R.raw.jack音乐文件没有提示时,需要修复一下


Android音乐播放器简单示例_第2张图片

注册我们的Service组件到程序中


Android音乐播放器简单示例_第3张图片
配置文件会多一行,注意.MediaPlayerService前面的.

<service android:name=".MediaPlayerService"></service>

我们的界面图设计如下,主要是两个按钮


Android音乐播放器简单示例_第4张图片

主程序添加代码

package org.snailteam;import android.app.Activity;import android.content.Intent;import android.os.Bundle;import android.util.Log;import android.view.View;import android.view.View.OnClickListener;import android.widget.Button;public class application extends Activity implements OnClickListener{//我的主程序类是applicationprivate static final String TAG = "主程序";Button buttonStart, buttonStop;    public void onCreate(Bundle savedInstanceState) {        super.onCreate(savedInstanceState);        setContentView(R.layout.main);        buttonStart = (Button)findViewById(R.id.buttonStart);        buttonStop = (Button)findViewById(R.id.buttonStop);        buttonStart.setOnClickListener(this);        buttonStop.setOnClickListener(this);    } public void onClick(View view) { switch (view.getId()) {//判断哪个按钮        case R.id.buttonStart:            Log.i(TAG, "onClick: starting service");            startService(new Intent(this, MediaPlayerService.class));//引用我们自己写的媒体服务组件            break;        case R.id.buttonStop:            Log.i(TAG, "onClick: stopping service");            stopService(new Intent(this, MediaPlayerService.class));            break;}}}

之后大家可以运行试试效果。

更多相关文章

  1. Android SurfaceView使用示例(二)
  2. Android ApiDemos示例解析(108):Views->Controls->2. Default Th
  3. 简单android Service 创建与启动示例
  4. Android简单短信发送示例
  5. jamendo_android 一个开源的Android在线音乐播放器实例
  6. Android Post Get 示例
  7. Android录音功能和播放录音功能的示例源码
  8. 一个Android实现图片的倒影效果的代码示例
  9. android 获取音乐文件的内置专辑图片

随机推荐

  1. Window7 环境下 MariaDB 的安装 及使用
  2. MySQL翻页查询技巧
  3. 请问MySql 可以处理8千万条以上的记录吗,
  4. mysql启动脚本——指定数据目录并指定配
  5. PHP OOP和MySQLi连接=致命错误:调用未定
  6. InnoDB瓶颈:放宽ACID以提高性能
  7. Hive安装与部署集成mysql
  8. 0926MySQL中ICP索引下推
  9. 【转载】----CentOS 6.5下安装MySQL 5.6.
  10. 安装mysql5.7解压包中遇见的问题