У меня есть 2 мероприятия.В дочерней активности я добавил что-то подобное в onPause ():
if (isFinishing()) {
final Intent intent = new Intent();
intent.putExtra(SOME_DATA, value);
setResult(RESULT_OK, intent);
Log.i("test", "Result set to RESULT_OK");
}
В родительской активности я проверяю resultCode, когда дочерняя активность уничтожается, и вот что я заметил:
- Если я уничтожаю дочернюю активность каким-либо действием (в некоторых условиях я вызываю finish ()), то resultCode будет RESULT_OK
- Но когда я уничтожаю, нажимая клавишу возврата (я работаю только в эмуляторе, поэтому его ESC), которыйубивает активность, после чего readCode, считанный в родительском методе onActivityResult, равен 0 (RESULT_CANCELD).
В каждом случае чтение "тестового" журнала одинаково.