Android中如何判断service是否启动并停止
2017-07-05 15:46
537 查看
启动service时有两种方法:startService;bindService。
那么如何停止一个service呢?
stopService()和stopSelf()都可以停止通过startService()方式启动的service。
stopService需要传递startService(Intent service)时的intent对象作为参数,停止此intent对应的service。
stopSelf直接停止本service,不需要参数,在service中直接调用即可。
service退出时会调用onDestroy()函数,可以在此函数中进行释放等操作。例如执行MediaPlayer对象的release()并赋值为null,调用System.exit(0);退出应用程序等。
/* * 判断服务是否启动,context上下文对象 ,className服务的name */ public static boolean isServiceRunning(Context mContext, String className) { boolean isRunning = false; ActivityManager activityManager = (ActivityManager) mContext .getSystemService(Context.ACTIVITY_SERVICE); List<ActivityManager.RunningServiceInfo> serviceList = activityManager .getRunningServices(30); if (!(serviceList.size() > 0)) { return false; } Log.e("OnlineService:",className); for (int i = 0; i < serviceList.size(); i++) { Log.e("serviceName:",serviceList.get(i).service.getClassName()); if (serviceList.get(i).service.getClassName().contains(className) == true) { isRunning = true; break; } } return isRunning; }
那么如何停止一个service呢?
stopService()和stopSelf()都可以停止通过startService()方式启动的service。
stopService需要传递startService(Intent service)时的intent对象作为参数,停止此intent对应的service。
stopSelf直接停止本service,不需要参数,在service中直接调用即可。
service退出时会调用onDestroy()函数,可以在此函数中进行释放等操作。例如执行MediaPlayer对象的release()并赋值为null,调用System.exit(0);退出应用程序等。
相关文章推荐
- android中判断service是否已经启动
- Android——判断Service是否已经启动
- android中判断service是否已经启动
- 如何判断Android手机系统是否支持HCE功能(Hostapduservice)
- Jollen 的 Android 教学(10): 如何检查 Service 是否已启动?使用 Android 除错器
- 判断android系统中Service是否在运行的方法
- android 如何判断程序是否在前台运行
- Android中 如何判断现在所处的界面是否为home主桌面
- 如何判断软件程序是否联网 联网状态提示信息Android实现
- 在Android中,如何判断当前是否在桌面上
- Android中如何做到Service被关闭后又自动启动
- android如何实现开机自动启动Service或app
- LINUX下如何查看tomcat运行状态,判断其是否启动
- Android中如何判断是否联网
- 判断Service是否启动
- 如何判断android的activity是否运行
- Android 如何判断拨打电话对方是否接听
- Android判断Service是否运行
- 关于android 如何判断是否连接网络
- Android如何判断当前手机是否正在播放音乐,并获取到正在播放的音乐的信息