类似的Timer循环服务设计

 <service android:name=".mService1" android:exported="true" android:process=":remote" ></service>

 


/* 自定义mService类继承Service类 */
public class mService1 extends Service
{
  /* 建立Handler对象,作为线程传递 postDelayed之用 */
  private Handler objHandler = new Handler();
 
  /* 为确认系统服务执行情况 */
  private int intCounter=0;
 
  /* 成员变量mTasks为Runnable对象,作为Timer之用 */
  private Runnable mTasks = new Runnable()
  {
    /* 执行线程 */
    public void run()
    {
      /* 递增counter整数,作为后台服务运行时间识别 */
      intCounter++;
     
      /* 以Log对象LogCat里输出log信息,监看服务执行情况 */
      Log.i("HIPPO", "Counter:"+Integer.toString(intCounter));
     
      /* 每1秒调用Handler.postDelayed方法反复执行 */
      objHandler.postDelayed(mTasks, 1000);
    }
  };
 
  @Override
  public void onStart(Intent intent, int startId)
  {
    // TODO Auto-generated method stub
    super.onStart(intent, startId);
  }

 

  @Override
  public void onCreate()
  {
    // TODO Auto-generated method stub
    /* 服务开始,调用每1秒mTasks线程 */
    objHandler.postDelayed(mTasks, 1000);
    super.onCreate();
  }
  
  

  @Override
  public void onDestroy()
  {
    // TODO Auto-generated method stub
   
    /* 当服务结束,移除mTasks线程 */
    objHandler.removeCallbacks(mTasks);
    super.onDestroy();
  } 
}

你可能感兴趣的:(timer)