Just figured out my problem. I was following the Compass example for the MenuActivity. In that example, after the menu is closed, the activity is finished, because of this onActivityResult never has a chance to run.
@Override
public void onOptionsMenuClosed(Menu menu) {
super.onOptionsMenuClosed(menu);
unbindService(mConnection);
// We must call finish() from this method to ensure that the activity ends either when an
// item is selected from the menu or when the menu is dismissed by swiping down.
finish();
}
so what I do instead is only close the menu activity for the other menu options, and leave the activity running until after the photo is done being processed.