Tengo 2 actividades AAA y BBB. Llamo a BBB desde AAA usando startActivityForResult (Intención, int). Después de que termine con BBB, presiono el botón Atrás para regresar a AAA. En BBB, anulo onPause() y establezco el resultado usando setResult (RESULT_OK).resultado no configurado en onPause() usando setResult() al presionar el botón Atrás
En AAA, compruebo mi resultado en onActivityResult (int requestCode, int resultCode, datos de intención) y sigo recibiendo RESULT_CANCELLED.
Después de pasar algún tiempo en google/stackoverflow, descubrí que si anulo onBackPressed() y establezco el resultado en él, entonces funciona absolutamente bien.
Lo que no entiendo es que, ¿por qué el resultado no se establece en onPause(), cuando en realidad se llama onPause() después de onBackPressed(). He revisado los flujos de actividades en los documentos Dev y tengo bastante claro qué se ha mencionado allí.
¿Alguien tiene alguna idea sobre este comportamiento o podría explicarlo mejor?
Duplicado de http://stackoverflow.com/questions/2679250/setresult-does-not-work-when-back-button-pressed – pjv