I have 2 activities AAA and BBB. I call BBB from AAA using startActivityForResult(Intent, int). After I am done with BBB, I press the Back button to return to AAA. In BBB, I override onPause() and set the result by using setResult(RESULT_OK).
In AAA, I check my result in onActivityResult(int requestCode, int resultCode, Intent data) and I keep getting RESULT_CANCELLED.
After spending sometime on google/stackoverflow, I figured out that if I override onBackPressed() and set the result in it, then it works absolutely fine.
What I fail to understand is that, why is the result not getting set in onPause(), when in fact onPause() gets called after onBackPressed(). I have gone through the activity flows in the Dev docs and I am pretty clear about what has been mentioned there.
Anyone got any ideas about this behavior or could explain it better?