zoukankan      html  css  js  c++  java
  • 绑定本地Service并与之通信-----之一

    import android.app.Service;
    import android.content.Intent;
    import android.os.Binder;
    import android.os.IBinder;

    public class BindService extends Service{
      private int count;
      private boolean quit;
      //定义onBinder方法所返回的对象
      private MyBinder binder = new MyBinder();
      //通过继承Binder来实现IBinder类
      public class MyBinder extends Binder{
        public int getCount(){
          //获取Service的运行状态:count
          return count;
        }
      }

      //必须实现的方法
      @Override
      public IBinder onBind(Intent intent) {
        System.out.println("Service is Binded");
        //返回IBinder对象
        return binder;
      }

      //Service被创建时回调该方法
      @Override
      public void onCreate() {
        super.onCreate();
        System.out.println("Service is Created");
        //启动一条线程、动态地修改count状态值
        new Thread(){
          public void run() {
            while(!quit){
              try {
                Thread.sleep(1000);
              } catch (InterruptedException e) {
                e.printStackTrace();
              }
              count++;
            }
          }
        }.start();
      }
      //Service被断开连接时回调该方法
      @Override
      public boolean onUnbind(Intent intent) {
        System.out.println("Service is Unbinded");
        return true;
      }

      //Service被关闭之前回调
      @Override
      public void onDestroy() {
        super.onDestroy();
        this.quit = true;
        System.out.println("Service is Destroyed");
      }

    }

  • 相关阅读:
    [课程设计]任务进度条&开发日志目录
    《软件工程》课程设计-团队成立
    软件工程学期总结
    第三次冲刺及课程设计 617
    学术诚信与职业道德
    第二个冲刺
    操作系统 实验四主存空间的分配和回收
    0526 《构建之法》第8-10章读后感
    SCRUM项目 6.0
    SCRUM项目 5.0
  • 原文地址:https://www.cnblogs.com/jiww/p/5602640.html
Copyright © 2011-2022 走看看