Some of the application that if you want to disable orientation in android, then try some of the tricks, which is not 100% working all level of API.
In Stackoverflow, Intrications give most reliable and useful answers,
Add
In Stackoverflow, Intrications give most reliable and useful answers,
Add
android:configChanges="keyboardHidden|orientation"
to your AndroidManifest.xml. This tells the system what configuration changes you are going to handle yourself - in this case by doing nothing.<activity android:name="MainActivity"
android:screenOrientation="portrait"
android:configChanges="keyboardHidden|orientation">
See http://developer.android.com/reference/android/R.attr.html#configChanges for more details.
However, your application can be interrupted at any time, e.g. by a phone call, so you really should add code to save the state of your application when it is paused.
Update: As of Android 3.2, you also need to add "screenSize":
<activity
android:name="MainActivity"
android:screenOrientation="portrait"
android:configChanges="keyboardHidden|orientation|screenSize">
Or , Yoni Samlan gives highest voted in stackoverflow about orientation change in android. AddCaution: Beginning with Android 3.2 (API level 13), the "screen size" also changes when the device switches between portrait and landscape orientation. Thus, if you want to prevent runtime restarts due to orientation change when developing for API level 13 or higher (as declared by the minSdkVersion and targetSdkVersion attributes), you must include the "screenSize" value in addition to the "orientation" value. That is, you must declareandroid:configChanges="orientation|screenSize"
. However, if your application targets API level 12 or lower, then your activity always handles this configuration change itself (this configuration change does not restart your activity, even when running on an Android 3.2 or higher device).
android:screenOrientation="portrait"
to the activity in the AndroidManifest.xml. For example: <activity android:name=".SomeActivity"
android:label="@string/app_name"
android:screenOrientation="portrait">
and followed of other answers where you may be use this,@Override
public void onConfigurationChanged(Configuration newConfig) {
super.onConfigurationChanged(newConfig);
setRequestedOrientation(ActivityInfo.SCREEN_ORIENTATION_PORTRAIT);
}
Sometimes it works also, don't forget to set this, if the above not working,android:screenOrientation="nosensor" android:configChanges="keyboardHidden|orientation"