首页 > 移动平台 > 详细

Android 判断当前Activity是不是最后一个Activity 以及 应用或Activity是否存在

时间:2015-06-04 11:51:06      阅读:1384      评论:0      收藏:0      [点我收藏+]

判断当前Activity是最后一个Activity:

在Activity的方法中, 有一个方法isTaskRoot()方法, 这个方法可以判断当前Activity是否是最后一个Activity, 如果是, 用户再按一次返回键就退出应用, 否则回到上一个仍然活动的Activity;

代码如下:

@Override
	public void onBackPressed() {
		if (isTaskRoot()) {
			Toast.makeText(mContext, "当前activity是该应用唯一,一个存活的activity", 0).show();
		}else {
			Toast.makeText(mContext, "当前activity不是是该应用唯一,存活的activity", 0).show();
		}
		super.onBackPressed();
	}

判断应用或Activity是否存在:

一、根据包名判断应用是否存在

public boolean checkApplication(String packageName) {

  if (packageName == null || "".equals(packageName)){

      return false;

  }

  try {

      ApplicationInfo info = getPackageManager().getApplicationInfo(packageName, PackageManager.GET_UNINSTALLED_PACKAGES);
      return true;
  } catch (NameNotFoundException e) {
      return false;
  }

}


二、判断Activity是否存在

  Intent intent = new Intent();
  intent.setClassName("包名", "类名");

 

方法一:
  if (getPackageManager().resolveActivity(intent, 0) == null) {  

       // 说明系统中不存在这个activity
  }

方法二:
  if(intent.resolveActivity(getPackageManager()) == null) {  

       // 说明系统中不存在这个activity
  }

方法三:
  List<ResolveInfo> list = getPackageManager().queryIntentActivities(intent, 0);
  if (list.size() == 0) {   
       // 说明系统中不存在这个activity
  }



Android 判断当前Activity是不是最后一个Activity 以及 应用或Activity是否存在

原文:http://blog.csdn.net/u014649598/article/details/46357539

(0)
(0)
   
举报
评论 一句话评论(0
关于我们 - 联系我们 - 留言反馈 - 联系我们:wmxa8@hotmail.com
© 2014 bubuko.com 版权所有
打开技术之扣,分享程序人生!