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

判断当前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 list = getPackageManager().queryIntentActivities(intent, 0);

if (list.size() == 0) {

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

}

原文:http://blog.youkuaiyun.com/u014649598/article/details/46357539

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值