android - 如何设置定时器每 n 分钟调用一个函数?

标签 android android-sqlite android-alarms

我想在 Android 应用程序中设置一个计时器,它会在用户登录时每 15/30/45 和 n 分钟后调用一个函数。但它也会在用户注销时停止计时器。如果用户再次登录,计时器会从头开始。我希望将该选项(15/30/45/n 分钟)保存在数据库中,以便我可以在同步后更新列表。

Timer 是一个好方法还是我需要使用警报服务?还是需要什么系统服务?

是否可以将本地手机数据库存储中的先前文档/文件更改为通过网络服务器接收的新文档?这样做需要任何系统服务吗?

最佳答案

使用以下代码每 15/30/45 调用您的函数

 final Handler handler = new Handler();
Timer    timer = new Timer();
    TimerTask doAsynchronousTask = new TimerTask() {       
        @Override
        public void run() {
            handler.post(new Runnable() {
                @SuppressWarnings("unchecked")
                public void run() { 
                   try {
                        "Your function call  " 
                       }
                 catch (Exception e) {
                        // TODO Auto-generated catch block
                    }
                }
            });
        }
    };
    timer.schedule(doAsynchronousTask, 0, "Timer value"); 

关于android - 如何设置定时器每 n 分钟调用一个函数?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/16059754/

相关文章:

android - GreenDAO 支持表之间的多种关系

android - 卸载 Android 应用程序时不会删除数据库

android - AlarmManager 和 WakefullBroadcastReceiver 传递的 Extras 有多私密?

android - 压缩视频FFMPEG不起作用

android - 此语言级别不支持钻石类型

java - 我可以在 android 中有 2 个具有相同 ID 的不同 View 吗

安卓12 : Using SCHEDULE_EXACT_ALARM permission to get/show data at specific time are safe in Google Play Policy?

java - 如何从 Android 设备的键盘上按下搜索按钮?

android - 创建数据库和默认数据

android - 使用定时器重复 IntentService - 是否可取?