Android 每 5 秒启动一次服务



我想让一个有限的状态机首先每 5 秒调用一次我的 StartEstablishService() 方法,以便应用程序在服务失败后尝试重新连接到服务。当服务失败时,它将破坏服务,我唯一需要做的是再次调用StartEstablishService()方法,这是连接失败后的输出:Destroying service...Service destroyed

    @Override
public void onDestroy() {
    super.onDestroy();
    Log.d(TAG, "Destroying service...");
    t.interrupt();
    Log.d(TAG, "Service destroyed.");
}

如何每 5 秒调用一次StartEstablishService()?我试图在服务被销毁后调用以下方法

public void startExploring() {
        Log.e(TAG,"Start Exploring Every 8 Seconds...");
        final int FIVE_SECONDS = 5000;
        final MainActivity activity = (MainActivity) getActivity();
        final Handler handler = new Handler();
        handler.postDelayed(new Runnable() {
            @Override
            public void run() {
                activity.startData();
                handler.postDelayed(this,
                FIVE_SECONDS);
            }
        }, 5000);

但它的活动总是空??

您可以使用警报管理器每 5 分钟启动一次服务。

为了查找为什么活动为空,您必须发布更多代码,包括文件名,您使用的结构等

最新更新