首页 > 解决方案 > 如何连续触发或发送意图(无需单击按钮)

问题描述

我正在尝试在 UI 中更新我的编辑文本。我有一项服务,通过单击按钮并在 UI 中更新来发送意图。一切正常。但我想在不点击按钮的情况下发送意图。

我试图将我的 Intent 放入一个方法中并oncreate在服务中调用它,但即便如此它也只被调用了一次。

public class myService extends service {
 onCreate{
     sendMessage();
}

 private void sendMessage(){
    Intent intent = new Intent("com.example.app.SEND");
    intent.putExtra("KEY", (String) Number);
    sendBroadcast(intent);
}

当我这样做时,我只是发送没有用的空字符串。即便如此,也只有一次。

我可以连续发送意图吗?以便它在收到输入后更新我的用户界面?有什么可能的方法吗?

我想每 5 秒发送一次意图。

标签: javaandroidandroid-intent

解决方案


您可以将 TimerTask 与 IntentService 一起用于计划作业。前任:

Timer timer = new Timer();
    TimerTask timerTask = new TimerTask() {
        @Override
        public void run() {
            //some execution
        }
    };
    timer.schedule(timerTask, 5000, 5000);

推荐阅读