Update April 2013: Tu das nicht. Es war keine gute Idee im Jahr 2009, als ich die Frage zum ersten Mal beantwortete, und es ist jetzt wirklich keine gute Idee. Siehe diese Antwort von Hackbod aus folgenden Gründen:
Vermeiden Sie das Nachladen von Aktivitäten mit Asynctask bei Orientierungsänderungen in Android
Fügen Sie android:configChanges="keyboardHidden|orientation"
zu Ihrer AndroidManifest.xml hinzu. Dies teilt dem System mit, welche Konfigurationsänderungen Sie selbst vornehmen werden - in diesem Fall, indem Sie nichts tun.
<activity android:name="MainActivity"
android:screenOrientation="portrait"
android:configChanges="keyboardHidden|orientation">
Weitere Informationen finden Sie in der Entwicklerreferenz configChanges .
Ihre Anwendung kann jedoch jederzeit unterbrochen werden, z. B. durch einen Telefonanruf. Sie sollten daher unbedingt Code hinzufügen, um den Status Ihrer Anwendung zu speichern, wenn diese angehalten wird.
Update: Ab Android 3.2 müssen Sie auch "screenSize" hinzufügen:
<activity
android:name="MainActivity"
android:screenOrientation="portrait"
android:configChanges="keyboardHidden|orientation|screenSize">
Im Entwicklerhandbuch Umgang mit der Konfiguration Ändern Sie sich
Achtung: Ab Android 3.2 (API-Level 13) ändert sich die "Bildschirmgröße" auch, wenn das Gerät zwischen Hoch- und Querformat wechselt. Wenn Sie also einen Neustart der Laufzeit aufgrund von Orientierungsänderungen bei der Entwicklung für API-Level 13 oder höher (wie durch die Attribute minSdkVersion und targetSdkVersion deklariert) verhindern möchten, müssen Sie zusätzlich zum Wert "Orientierung" den Wert "screenSize" angeben. Das heißt, Sie müssen erklären
android:configChanges="orientation|screenSize"
. Wenn Ihre Anwendung jedoch auf API-Stufe 12 oder niedriger abzielt, behandelt Ihre Aktivität diese Konfigurationsänderung immer selbst (diese Konfigurationsänderung startet Ihre Aktivität nicht neu, selbst wenn sie auf einem Android 3.2-Gerät oder höher ausgeführt wird).