启动activity的方式
public static boolean startActivity(Context context, Intent intent) {
if (intent == null) {
return false;
}
try {
context.startActivity(intent);
return true;
} catch (ActivityNotFoundException e) {
e.printStackTrace();
}
return false;
}
public static boolean startActivity(Context context, String action) {
if (action == null || action.length() == 0) {
return false;
}
return startActivity(context, new Intent(action));
}
public static boolean startActivity(Context context, String pkg, String cls) {//androidMenifest 中的包名 和 类名
if (pkg == null || pkg.length() == 0 || cls == null
|| cls.length() == 0) {
return false;
}
final Intent intent = new Intent();
intent.setClassName(pkg, cls);
return startActivity(context, intent);
}
public static boolean startActivity(Context context, ComponentName cpn) {
if (cpn == null) {
return false;
}
final Intent intent = new Intent();
intent.setComponent(cpn);
return startActivity(context, intent);
}
public static boolean startActivity(Context context, AppInfo app) {
if (app == null) {
return false;
}
return startActivity(context, app.cpnName);
}
public static boolean startActivityForPickApp(Context context, int category) {
try {
final Intent intent = new Intent(context, AppsActivity.class);
intent.putExtra(AppsActivity.EXT_MODE,
AppsActivity.MODE_PICK_ONE_APP);
intent.putExtra(AppsActivity.EXT_CATEGORY, category);
if (context instanceof Activity) {
((Activity) context).startActivityForResult(intent,
Launcher.REQ_CODE_PICK_ONE_APP);
return true;
} else {
context.startActivity(intent);
return true;
}
} catch (ActivityNotFoundException e) {
e.printStackTrace();
}
return false;
}
public static boolean startActivityForPickWidget(Context context,
int widgetId) {
try {
final Intent intent = new Intent(
AppWidgetManager.ACTION_APPWIDGET_PICK);
intent.putExtra(AppWidgetManager.EXTRA_APPWIDGET_ID, widgetId);
if (context instanceof Activity) {
((Activity) context).startActivityForResult(intent,
Launcher.REQ_CODE_PICK_ONE_WIDGET);
return true;
} else {
context.startActivity(intent);
return true;
}
} catch (ActivityNotFoundException e) {
e.printStackTrace();
}
return false;
}
启动activity的重载类
最新推荐文章于 2022-09-25 12:32:51 发布