android 判断activity是否存在
发布网友
发布时间:2022-04-22 23:37
我来回答
共5个回答
热心网友
时间:2022-04-28 07:14
Android系统中,判断应用有无指定的Activity有两种方式:
1.根据包名判断,以下为判断代码:
public boolean checkApkExist(Context context, String packageName) {
if (packageName == null || “”.equals(packageName))
return false;
try {
ApplicationInfo info = context.getPackageManager()
.getApplicationInfo(packageName,
PackageManager.GET_UNINSTALLED_PACKAGES);
return true;
} catch (NameNotFoundException e) {
return false;
}
}
2. 根据Intent判断,以下为判断代码:
public boolean checkApkExist(Context context, Intent intent) {
List<ResolveInfo> list = context.getPackageManager().queryIntentActivities(intent, 0);
if(list.size() > 0){
return true;
}
return false;
}
public boolean checkApkExist(Context context, String packageName) {
if (packageName == null || “”.equals(packageName)) return false;
try {
ApplicationInfo info = context.getPackageManager() .getApplicationInfo(packageName, PackageManager.GET_UNINSTALLED_PACKAGES); return true;
} catch (NameNotFoundException e) { return false; }
}
public boolean checkApkExist(Context context, Intent intent) {
List<ResolveInfo> list = context.getPackageManager()
.queryIntentActivities(intent, 0);
if (list.size() > 0) {
return true;
}
return false;
}
热心网友
时间:2022-04-28 08:32
在这个activity中添加一个状态标志,当被加载的时候修改这个状态标志的值,并将状态值返回给调用它的activity。
如在androidmanifest.xml中加入配置android:configChanges="orientation|keyboardHidden",配置android:configChanges的作用就是如文档所说的:Specify one or more configuration changes that the activity will handle itself. If not specified, the activity will be restarted if any of these configuration changes happen in the system。这样在程序中. Activity就不会重复的调用onCreate()甚至不会调用onPause.onResume.只会调用一个 onConfigurationChanged(Configuration newConfig)。
热心网友
时间:2022-04-28 10:07
运行后手机有一屏幕,jiuyou activity
热心网友
时间:2022-04-28 11:58
可以在那个activity里加个标志位,来判断
热心网友
时间:2022-04-28 14:06
请详细描述你的问题