android : 循环定时器(不停的发送数据)


为了完成串口定时发送数据,回调接口需要的定时装置。

ublic class LongRunningService extends Service {
   @Nullable
   @Override
   public IBinder onBind(Intent intent) {
       return null;
  }

   @Override
   public int onStartCommand(Intent intent, int flags, int startId) {
       new Thread(new Runnable() {
           @Override
           public void run() {
//需要执行的代码
          }
      }).start();
       AlarmManager manager = (AlarmManager) getSystemService(ALARM_SERVICE);
       //时间设置(我设定的是5秒)
       int anHour = 5*1000;
       //设定计算机现在的时间点+加上的时间点(就是说设定你定闹钟的点)
       long triggerAtTime = SystemClock.elapsedRealtime()+anHour;
       //这个不用我说了吧
       Intent i = new Intent (this,LongRunningService.class);
       //打开一个服务组件
       PendingIntent pi = PendingIntent.getService(this,0,i,0);
       //1.计算机的时间(唤醒CPU)
       //2.设定的时间...
       //3.当定时任务被触发的时候,服务的onStartCommand()方法或者
       //广播接收器OnReceive()方法就可以得到执行
       manager.set(AlarmManager.ELAPSED_REALTIME_WAKEUP,triggerAtTime,pi);
       return super.onStartCommand(intent,flags,startId);
  }
}

 、、、、、当然不要忘了再需要的点

  Intent intent = new Intent(context,LongRunningService.class);

  context.startService(intent);

 


					


免责声明!

本站转载的文章为个人学习借鉴使用,本站对版权不负任何法律责任。如果侵犯了您的隐私权益,请联系本站邮箱yoyou2525@163.com删除。



 
粤ICP备18138465号  © 2018-2025 CODEPRJ.COM