java - 如何连续触发或发送 Intent (无需单击按钮)

标签 java android android-intent

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

我尝试的是将我的 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);
}

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

我可以连续发送 Intent 吗?这样一旦收到输入它就会更新我的用户界面?有什么可行的方法吗?

我想每 5 秒发送一次 Intent 。

最佳答案

您可以将 TimerTask 与 IntentService 结合使用来执行计划作业。 例如:

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

关于java - 如何连续触发或发送 Intent (无需单击按钮),我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/57374200/

相关文章:

java - 在框架中显示我的打印线条

android - 如何将 Leptonica Pix 对象转换为 Android 的位图

android - 通过数据链接打开 MvvmCross 应用程序

Android 11 在带有字符串资源的 Android Manifest 中声明包可见性

android - native 应用程序比 HTML5 更快

android - 将一个 mutableList 从 Activity A 传递到 Kotlin 中的 Activity B。

java - 在谷歌应用引擎中为数据存储使用低级 api?不好吗?

java - 如何设置 log4j2 asyncQueueFullPolicy

java - 如何在java中使用StringTokenizer仅获取最后一个标记

java - 如何在android中使用recyclerView传递id而不是位置