• 博客园logo
  • 会员
  • 众包
  • 新闻
  • 博问
  • 闪存
  • 赞助商
  • HarmonyOS
  • Chat2DB
    • 搜索
      所有博客
    • 搜索
      当前博客
  • 写随笔 我的博客 短消息 简洁模式
    用户头像
    我的博客 我的园子 账号设置 会员中心 简洁模式 ... 退出登录
    注册 登录
山高我为峰
博客园    首页    新随笔    联系   管理    订阅  订阅
Android 服务

Android服务是Android应用程序的一类可以异步运行的组件

要创建自己的服务类,需要派生Service类,并至少用自定义代码实现onCreate()、onStart()、onDestory()这几个方法。此外还必须在

AndroidManifest.XML文件中用<service>标签表明你的服务

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

"android:enbaled"标识这个服务是否可以用。如果将这个属性设置为false,那么对于Android应用程序来说,这个服务依然被声明了,并可以稍后用过Java代码来启用它

"android:name"表示要编写的这个服务类的名称

package intent.filters;

import android.app.service;
import android.content.Intent;
import android.os.IBinder;
import android.media.MediaPlayer;

public class MediaPlayerService extends Service{
    MediaPlayer myMediaPlayer;
    
    @Override
    public IBinder onBind(Intent intent){
        return null;
    }
    @Override
    public void onCreate(){
        myMediaPlayer=MediaPlayer.create(this.R.raw.mindtaffy);//R.raw.mindtaffy表示/res/raw/目录下的mindtaffy文件
        myMediaPlayer.setLooping(true);
    }
    @Override
    public void onStart(){
        myMediaPlayer.start();
    }
    @Override
    public void onDestroy(){
        myMediaPlayer.stop();
    }
}

 

将按钮链接到服务

Button startButton=(Button)findViewById(R.id.startButton);
startButton.setOnClickListener(new View.OnClickListener(){
    public void onClick(View view){
        startService(new Intent(getBaseContent(),MediaPlayerService.class));
    }
});


Button stopButton=(Button)findViewById(R.id.stopButton);
stopButton.setOnClickListener(new View.OnClickListener(){
    public void onClick(View view){
        stopService(new Intent(getBaseContent(),MediaPlayerService.class));
    }
});

 

posted on 2016-07-31 14:37  山高我为峰  阅读(260)  评论(0)    收藏  举报
刷新页面返回顶部
博客园  ©  2004-2025
浙公网安备 33010602011771号 浙ICP备2021040463号-3