-1

我想在用户强制关闭应用程序后检查服务是否正在运行。我怎样才能做到这一点。我在广播接收器的 onReceive 中执行此操作。但即使在强制关闭后,它也会显示服务正在运行 Toast。

   boolean isServiceRunning = AppSettings.getServiceRunning(context);       
    if (isServiceRunning)
    {
        Toast.makeText(context,"service running", Toast.LENGTH_LONG).show();

    } 
    else 
    {   
        Toast.makeText(context,"service stopped", Toast.LENGTH_LONG).show();        
    }
4

1 回答 1

1

尝试这个:

public boolean checkRunningService() {
        ActivityManager activityManager = (ActivityManager) getSystemService(ACTIVITY_SERVICE);
        for (RunningServiceInfo myService : activityManager
                .getRunningServices(Integer.MAX_VALUE)) {
            if ("com.main.YOUR_SERVICE_NAME".equals(myService.service
                    .getClassName())) {
                return true;
            }
        }
        return false;
    }

希望这可以帮助。

编辑:-

您在清单文件中的服务应该是这样的:

<service
            android:name="com.main.YOUR_SERVICE_NAME"
            android:enabled="true" />
于 2013-04-12T11:51:28.730 回答