我正在尝试从扩展BroadcastReceiver的类开始一个活动。
public void onReceive(Context context, Intent intent) {
问题是参数上下文是Application上下文而不是Activity上下文。
是否有办法使用Application上下文启动intent?
答案 0 :(得分:36)
以下是如何使用上下文调用其他活动的示例代码, 根据您的要求设置标志:
public void onReceive(Context context, Intent intent) {
Intent startActivity = new Intent();
startActivity.setClass(context, xxx.class);
startActivity.setAction(xxx.class.getName());
startActivity.setFlags(
Intent.FLAG_ACTIVITY_NEW_TASK
| Intent.FLAG_ACTIVITY_EXCLUDE_FROM_RECENTS);
context.startActivity(startActivity);
}
答案 1 :(得分:-7)
是的,只需使用上下文并从该上下文中调用startActivity()
方法。