期待した動作
(1) ActivityAから、startActivityForResult()でActivityBを起動
↓
(2) ActivityBでsetResult(),finish()するよね
↓
(3) ActivityAのonActivityResult()が呼ばれて結果を受け取ってゴニョゴニョ
現象
(1) startActivityForResult()
↓
(2) ActivityAのonActivityResult()がすぐに呼ばれる
↓
(3) ActivityBでfinish()した後は、うんともすんとも言わない
結論
ActivityA または ActivityBのどちらかに、
android:launchMode="singleInstance"
android:launchMode="singleTask"
が指定されているとstartActivityForResult()/onActivityResult()は使えない
ActivityAをsingleInstanceにしてました。
一応事情があって付けてたんで、代替案を考えないとな・・・