zoukankan      html  css  js  c++  java
  • 后台执行的定时任务

    package com.pingyijinren.test;
    
    import android.content.Intent;
    import android.support.v7.app.AppCompatActivity;
    import android.os.Bundle;
    import android.util.Log;
    import android.view.View;
    import android.widget.Button;
    
    public class MainActivity extends AppCompatActivity{
        private Button startIntentService;
        @Override
        protected void onCreate(Bundle savedInstanceState) {
            super.onCreate(savedInstanceState);
            setContentView(R.layout.activity_main);
    
            Intent it=new Intent(this,LongRunningService.class);
            startService(it);
        }
    }
    package com.pingyijinren.test;
    
    import android.app.AlarmManager;
    import android.app.PendingIntent;
    import android.app.Service;
    import android.content.Intent;
    import android.os.IBinder;
    import android.os.SystemClock;
    import android.util.Log;
    
    public class LongRunningService extends Service {
        public LongRunningService() {
        }
    
        @Override
        public IBinder onBind(Intent intent) {
            // TODO: Return the communication channel to the service.
            throw new UnsupportedOperationException("Not yet implemented");
        }
    
        @Override
        public int onStartCommand(Intent intent,int flags,int startId){
            new Thread(new Runnable() {
                @Override
                public void run() {
                    Log.d("MainActivity","我是子线程");
                }
            }).start();
    
            AlarmManager alarmManager=(AlarmManager)getSystemService(ALARM_SERVICE);
            long triggerAtTime= SystemClock.elapsedRealtime()+10*1000;
            Intent it=new Intent(this,AlarmReceiver.class);
            PendingIntent pi=PendingIntent.getBroadcast(this,0,it,0);
            alarmManager.set(AlarmManager.ELAPSED_REALTIME_WAKEUP,triggerAtTime,pi);
            return super.onStartCommand(intent,flags,startId);
        }
    }
    package com.pingyijinren.test;
    
    import android.content.BroadcastReceiver;
    import android.content.Context;
    import android.content.Intent;
    
    public class AlarmReceiver extends BroadcastReceiver {
        public AlarmReceiver() {
        }
    
        @Override
        public void onReceive(Context context, Intent intent) {
            // TODO: This method is called when the BroadcastReceiver is receiving
            // an Intent broadcast.
            //throw new UnsupportedOperationException("Not yet implemented");
            Intent it=new Intent(context,LongRunningService.class);
            context.startService(it);
        }
    }
  • 相关阅读:
    STM32学习笔记——定时器中断(向原子哥学习)
    STM32学习笔记——USART串口(向原子哥和火哥学习)
    STM32学习笔记——SPI串行通讯(向原子哥学习)
    STM32学习笔记——DMA控制器(向原子哥学习)
    Laravel中使用JWT
    Windows10 下安装SourceTree 跳过注册 Bitbucket
    [转载]MySQL中int(11)最大长度是多少?
    PHP Curl 请求https 60错误解决办法
    Linux 平台 安装 Composer
    常见密码正则表达式
  • 原文地址:https://www.cnblogs.com/zqxLonely/p/5506258.html
Copyright © 2011-2022 走看看