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");
      }

    }

  • 相关阅读:
    Python入门day12——文件操作的补充
    day11作业
    Python入门day11——文件处理
    文本操作问题
    Python入门day10——基本数据类型之集合
    day09作业
    Pagination(分页) 从前台到后端总结
    Chrome使用技巧(几个月的心得)
    ASTA存在的问题
    SmartBinding实现DataSet与ListView的绑定及同步显示
  • 原文地址:https://www.cnblogs.com/jiww/p/5602640.html
Copyright © 2011-2022 走看看