android判断某个应用或者activity是否在运行

此方法是封装的在我的应用中需要去查看我的应用以及判断某个activity是否是运行在手机界面上

packageName 是需要判断是应用的包名  比如  com.xy.tencent

也可以判断某个activity是否显示在当前手机上面  反正就是写完整的路径就可以了!

<span style="font-size:18px;">/**
	 * 判断程序的运行在前台还是后台
	 *
	 * @param context
	 * @return 0在后台运行  大于0在前台运行  2表示当前主界面是MainFragmentActivity
	 */
	public static int isBackground(Context context) {
		ActivityManager activityManager = (ActivityManager) context
				.getSystemService(Context.ACTIVITY_SERVICE);
		String packageName = "com.xy.tencent";

		String bingMapMainActivityClassName = "com.xy.tencent.activity.MainFragmentActivity";
		List<RunningTaskInfo> tasksInfo = activityManager.getRunningTasks(1);
		if (tasksInfo.size() > 0) {
			ComponentName topConponent = tasksInfo.get(0).topActivity;
			LogUtil.d("TAG",
					"topConponent.getPackageName()..."
							+ topConponent.getPackageName());
			if (packageName.equals(topConponent.getPackageName())) {
				// 当前的APP在前台运行
				if (topConponent.getClassName().equals(
						bingMapMainActivityClassName)) {
					// 当前正在运行的是不是期望的Activity
					LogUtil.d("TAG", "MainFragmentActivity在运行");
					return 2;
				}
				LogUtil.d("TAG", "com.xy.tencent前台运行");
				return 1;
			} else {
				// 当前的APP在后台运行
				LogUtil.d("TAG", "com.xy.tencent后台运行");
				return 0;
			}
		}
		return 0;
	}</span>
时间: 2024-10-01 01:02:05

android判断某个应用或者activity是否在运行的相关文章

Android应用程序窗口(Activity)的运行上下文环境(Context)的创建过程分析

文章转载至CSDN社区罗升阳的安卓之旅,原文地址:http://blog.csdn.net/luoshengyang/article/details/8201936 在前文中,我们简要介绍了Android应用程序窗口的框架.Android应用程序窗口在运行的过程中,需要访问一些特定的资源或者类.这些特定的资源或者类构成了Android应用程序的运行上下文环境,Android应用程序窗口可以通过一个Context接口来访问它,这个Context接口也是我们在开发应用程序时经常碰到的.在本文中,我们

Android应用程序窗口(Activity)的视图对象(View)的创建过程分析

从前文可知道,每一个Activity组件都有一个关联的Window对象,用来描述一个应用程序窗口.每一个应用程序窗口内部又包含有一个View对象,用来描述应用程序窗口的视图.应用程序窗口视图是真正用来实现UI内容和布局的,也就是说,每一个Activity组件的UI内容和布局都是通过与其所关联的一个Window对象的内部的一个View对象来实现的.在本文中,我们就详细分析应用程序窗口视图的创建过程. 在前面Android应用程序窗口(Activity)实现框架简要介绍和学习计划一文中提到,应用程序

Android学习笔记四之Activity

Android四大组件之Activity 1.什么是Activity Activity是Android四大组件之一,用于显示View.Activity是一个应用程序组件,提供一个用户交互的接口,其本身是没有界面的,Activity类创建一个窗口,在上面可以绘制用户接口.窗口通常充满屏幕,也可以小于屏幕而悬浮于其他窗口之上. 开发者可以通过Activity类提供的setContentView(View)接口将View放到Activity创建的窗口上.一个程序一般由多个Activity组成,他们通常

Android应用程序窗口(Activity)的窗口对象(Window)的创建过程分析

http://blog.csdn.net/luoshengyang/article/details/8223770 在前文中,我们分析了Android应用程序窗口的运行上下文环境的创建过程.由此可知,每一个Activity组件都有一个关联的ContextImpl对象,同时,它还关联有一个Window对象,用来描述一个具体的应用程序窗口.由此又可知,Activity只不过是一个高度抽象的UI组件,它的具体UI实现其实是由其它的一系列对象来实现的.在本文中,我们就将详细分析Android应用程序窗口

Android开发学习之路--Activity之四种启动模式

后天终于可以回家了,马上就要过年了,趁着年底打酱油的模式,就多学习学习,然后记录记录吧.关于Activity已经学习了七七八八了,还有就是Activity的四种启动模式了,它们分别为,standard,singleTop,singleTask,singleInstance,根据名字也差不多可以理解这四种模式了: 1.standard:标准启动模式,默认情况下就是这个模式了,这个模式下启动的Activity会被多次实例化. 2.singleTop:这个模式下启动Activity的话,如果栈顶也是同

Android基础之四大组件---Activity

Android基础之四大组件-Activity 1.什么是Activity 2.Activity生命周期 3.Activity生命周期演示 4.Activity之间的通信 5.Activity之加载模式 6.Activity的栈式管理 1.什么是Activity? Activity是用户接口程序,它是Android应用程序的基本功能单元,它的主要功能是提供界面.Activity是Android的核心类,该类的全名是android.app.Activity.Activity相当于C/S程序中的窗体

Android四大基本组件之 Activity

[Activity介绍] Activity 是用户接口程序,原则上它会提供给用户一个交互式的接口功能.它是 android 应用程序的基本功能单元.Activity 本身是没有界面的.所以activity类创建了一个窗口,开发人员可以通过setContentView(View)接口把UI放到activity创建的窗口上,当activity指向全屏窗口时,也可以用其他方式实现:作为漂浮窗口(通过windowIsFloating的主题集合),或者嵌入到其他的activity(使用ActivityGr

android Application Component研究之Activity(二)

http://blog.csdn.net/windskier/article/details/7172710 本文为原创文章,欢迎转载!转载时请注明出处:http://blog.csdn.net/windskier 上篇文章分析完了task的创建或者复用,接下来接着分析activity在启动过程中还有哪些工作需要去完成?首先给出整个activity的过程图. 1. Starting Window 当该activity运行在新的task中或者进程中时,需要在activity显示之前显示一个Star

Android判断应用程序是否在前台

Android app中通过Broadcast Receiver接受Alarm的定时消息,以便发送Notification:这里发送Notification前要求app自身不在运行状态:检测app自身是否在前台的一个宗旨是:判断app所有的Activity是否有在前台的:在网上找了好长一段时间,发现一个个人觉得比较好的判定方法: public boolean isAppForground(Context mContext) { ActivityManager am = (ActivityMana