startActivityで起動したときとstartActivityForResultで起動したときで処理を分ける
Activityにおいて、startActivity()
で起動された時とstartActivityForResult()
で起動したときで実行される処理を分けたい、そんなときがあります。
そういう場合は、Activity#getCallingActivity()
を使用することで識別することができます。
if (getCallingActivity() == null) {
/* startActivity()で起動された */
} else {
/* startActivityForResult()で起動された */
}
参考
- [getCallingActivity()](https://developer.android.com/reference/android/app/Activity.html#getCallingActivity%28%29 getCallingActivity())