MK-lk

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

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

 


分类:

技术点:

相关文章:

  • 2021-07-19
  • 2022-12-23
  • 2022-12-23
  • 2021-12-15
  • 2022-01-07
  • 2022-01-07
  • 2022-01-07
猜你喜欢
  • 2022-01-07
  • 2021-07-03
  • 2022-01-07
  • 2022-01-07
  • 2021-05-29
  • 2022-12-23
  • 2022-01-07
相关资源
相似解决方案