java - Android - 不推荐使用 getRunningservices(ActivityManager)

标签 java android

我想知道 MyService.java 是否正常工作?

我创建了这个方法:

private boolean isServiceAlive(Class<?> serviceClass) {
    ActivityManager manager = (ActivityManager) getSystemService(Context.ACTIVITY_SERVICE);
    for (ActivityManager.RunningServiceInfo service : manager.getRunningServices(Integer.MAX_VALUE)) {
        if (serviceClass.getName().equals(service.service.getClassName())) {
            return true;
        }
    }
    return false;
}

它工作正常,但 API 26 已弃用 manager.getRunningServices()。那么我们是否有另一个好的解决方案(方法)来获取当前正在运行的服务列表?

最佳答案

尽管它没有回答您的问题,但我认为您仍然可以将此方法用于您自己的服务:

For backwards compatibility, it will still return the caller's own services.

如果您只想删除弃用警告,请使用 @SuppressWarnings("deprecation")

关于java - Android - 不推荐使用 getRunningservices(ActivityManager),我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/45519439/

相关文章:

java - 如何走楼梯和斜坡?

php - 从网站发送 "alert/notification"到手机

android - 我的操作栏标题使用了错误的主题颜色

java - 除非连接在超时前关闭,否则 Android 套接字读取不起作用

android - 通过 Firebase 回收器 View 搜索时无法

java - PowerMockito 在 Spring 3.2.4 中模拟静态测试 Controller

java - 异常创建对象

android - 如何在 Android Root 上使用我的应用程序名称创建文件夹

Java:如何处理错误的方法参数?

java - java中如何将两个字符串合并为一个字符串