I have a question about the startActivityForResult method:
I have 3 activities: A, B and C. A starts the startActivityForResult to launch B, then B will return the result to A. If the resultCode is OK, A will launch C. Like the image shown below:

According to my test on the devices running Android 2.3.x it always showing activity A for a short period of time before C is launched. But for the devices running 4.x, the activity A will not show up.
So, is there any way to hide A from showing up after B return the result to it?
With your camera example, here’s how I’d do it:
Astarts.AopensBwithstartActivity.If a picture is successfully taken (which you check in
B), send it toC, if not,finish()and return toA.So all you need to do is move the verification step to
B. I see no reason for the menu to verify this.