您的位置:首页 > 移动开发 > Android开发

Android判断后台服务是否开启的方法

2016-11-08 11:14 459 查看
最近项目用到后台上传,就开启了一个服务service。

但是刚开始用这种方法,有些机型不支持:酷派不支持。然后又换了第二种判断方法。

//    public boolean isServiceWork(Context mContext, String serviceName) {
//        boolean isWork = false;
//        ActivityManager myAM = (ActivityManager) mContext
//                .getSystemService(Context.ACTIVITY_SERVICE);
//        List<ActivityManager.RunningServiceInfo> myList = myAM.getRunningServices(40);
//        if (myList.size() <= 0) {
//            return false;
//        }
//        for (int i = 0; i < myList.size(); i++) {
//            String mName = myList.get(i).service.getClassName().toString();
//            if (mName.equals(serviceName)) {
//                isWork = true;
//                break;
//            }
//        }
//        return isWork;
//    }


第二种是:传入service的包名

private boolean isServiceRunning(String ServicePackageName) {
ActivityManager manager = (ActivityManager) getSystemService(ACTIVITY_SERVICE);
for (ActivityManager.RunningServiceInfo service : manager.getRunningServices(Integer.MAX_VALUE)) {
if (ServicePackageName.equals(service.service.getClassName())) {
return true;
}
}
return false;
}
内容来自用户分享和网络整理,不保证内容的准确性,如有侵权内容,可联系管理员处理 点击这里给我发消息
标签: 
相关文章推荐