I'm using the camera to show preview only (not to take pictures or record videos).
The app is always in portrait mode (landscape mode is disabled).
The camera preview is always rotated 90 degrees ccw and I can't change it
(neither with setDisplayOrientation
nor with p.set("orientation", "portrait" )
and p.set("rotation", 90) )
.
Is the preview ALWAYS rotated like this or is it device dependent? If it was always like this in portrait mode, I could just rotate the image afterwards.
Or is there a way to set up the camera correctly? I've read a lot of threads about this but no answer worked for me (Galaxy s2, Android v2.3)
I have coded the app for only Portrait Mode.
Will make the Camera to rotate to 90 degree and This may result in not suitable Orientation for some devices in android In order to get the Correct Preview for all android devices use the following code which is refereed in developers site.
Below you have to send your activity, cameraId = back is 0 and for Front camera is 1
This is how to set the setDisplayOrientation for camera which will perfectly for all android devices.
To force portrait orientation:
set
android:screenOrientation="portrait"
in yourAndroidManifest.xml
and callcamera.setDisplayOrientation(90);
before callingcamera.startPreview();
I have not tested on the GS2 but it works on every phone I have tested on.
Note: setDisplayOrientation was added in API Level 8