We specifically didn't want our app to run in landscape, so we added
the android:screenOrientation="portrait" to the activities in the
manifest.  This works as expected... the activity is limited to
portrait, and our activity isn't destroyed/created for each
orientation change.

One of the features of the app is that the user can take a photo, and
the image is displayed after some processing happens to the photo.  We
launch the camera app via the MediaStore.ACTION_IMAGE_CAPTURE Intent.
On most devices, this works just fine.

However, on some devices (so far the Samsung Captivate, and the
Motorola XOOM), there is some very unexpected behavior.  It would seem
the orientation changes are "stored up" and delivered to the
application after the user returns from the camera.  For example, the
camera is displayed, and the user rotates the device to take a
landscape photo, then rotates back and presses OK.  Immediately, the
activities that launched the camera app are destroyed/created twice.

The only "fix" I've found is to include
android:configChanges="orientation|keyboardHidden" for every activity
that can start the camera, and override onConfigurationChanged to do
nothing.

Is there a better way to handle this?  Seems like a bug that we are
having this happen.

-- 
You received this message because you are subscribed to the Google
Groups "Android Developers" group.
To post to this group, send email to [email protected]
To unsubscribe from this group, send email to
[email protected]
For more options, visit this group at
http://groups.google.com/group/android-developers?hl=en

Reply via email to