Activityのインスタンスをactivity,Contextのインスタンスをcontextとします.
Intent intent = new Intent(); intent.setClass(context, DashbordActivity.class); activity.starActivity(intent);
これは成功します.
次にactivityではなく,contextで同じように書きます
Intent intent = new Intent(); intent.setClass(context, DashbordActivity.class); context.startActivity(intent);
これは失敗します.
こんなエラーです.
android.util.AndroidRuntimeException: Calling startActivity() from outside of an Activity context requires the FLAG_ACTIVITY_NEW_TASK flag. Is this really what you want?
エラーに従ってフラグ立てます.
Intent intent = new Intent(); intent.setClass(context, DashbordActivity.class); intent.setFlags(Intent.FLAG_ACTIVITY_NEW_TASK); context.startActivity(intent);
これでactivityと同じように動作しました.