O aplicativo falha após a orientação da tela ser alterada

Eu tenho o seguinte problema. Após o início, o aplicativo funciona bem - mesmo após alterar a orientação da tela. O aplicativo ainda não está preparado para lidar com a mudança de orientação (por exemplo, layout alternativo e assim por diante); portanto, apenas o layout padrão girado é exibido e está OK. No entanto, quando saio do aplicativo pressionando a tecla Voltar, mude a orientação e imediatamente após iniciar o aplicativo novamente, ele trava. Após uma falha, se eu iniciar o aplicativo mais uma vez, ele funcionará bem até que as circunstâncias descritas anteriormente ocorram - então ele trav

Conectei o dispositivo ao computador e execute o aplicativo no modo de depuração. Após reiniciar, uma exceção é lançada antes mesmo de chamar onCreate. A pilha de chamadas de falha é a seguinte:

Thread [<1> main] (Suspended (exception IllegalArgumentException))  
WindowManagerImpl.removeViewImmediate(View) line: 262   
Window$LocalWindowManager.removeViewImmediate(View) line: 436   
ActivityThread.handleDestroyActivity(IBinder, boolean, int, boolean) line: 4022 
ActivityThread.handleRelaunchActivity(ActivityThread$ActivityRecord, int) line: 4127    
ActivityThread.access$2400(ActivityThread, ActivityThread$ActivityRecord, int) line: 136    
ActivityThread$H.handleMessage(Message) line: 2183  
ActivityThread$H(Handler).dispatchMessage(Message) line: 99 
Looper.loop() line: 143 
ActivityThread.main(String[]) line: 5068    
Method.invokeNative(Object, Object[], Class, Class[], Class, int, boolean) line: not available [native method]  
Method.invoke(Object, Object...) line: 521  
ZygoteInit$MethodAndArgsCaller.run() line: 858  
ZygoteInit.main(String[]) line: 616 
NativeStart.main(String[]) line: not available [native method]  

Eu planejo lidar com a rotação da tela mais tarde, mas até então, desejo que o comportamento padrão funcione corretament

Eu substituí apenas o método da atividade onCreate. Também tenho uma classe de aplicativo personalizada, que cria uma instância da classe de mecanismo usado em todo o aplicativo:

public class ProCalcApplication extends Application
{
    private Engine engine;

    public ProCalcApplication()
    {
        super();

        engine = new Engine();
    }

    public Engine getEngine()
    {
        return engine;
    }
}

Como resolver este problema

Eu fiz mais alguns testes. Eu comentei o código inteiro, deixando apenas a implementação padrão do método onCreate (super () + setContentLayout ()). O problema persistiu, então eu comentei todo o XML do layout e o aplicativo finalmente parou de funcionar. Estou em processo de pregar a entrada com defeito, aguarde;)

Encontrei a causa, ainda não há solução. O código XML com defeito é o seguinte:

<LinearLayout android:layout_width="match_parent" android:layout_height="match_parent" android:orientation="vertical">

    <android.gesture.GestureOverlayView android:id="@+id/gestureOverlay" android:layout_width="match_parent" android:layout_height="0dp" android:layout_weight="3">
        <ViewFlipper android:id="@+id/contextArea" android:layout_width="match_parent" android:layout_height="match_parent">

        </ViewFlipper>          
    </android.gesture.GestureOverlayView>

</LinearLayout> 

Alguém pode tentar provar ou refutar que esse código falha nas circunstâncias descritas? Ou aponte, onde eu cometi um erro;)

Meu ambiente: HTC Desire Z (2.2.1), API 8 usada. Versão do Eclipse: Helios Service Release 2 ID da compilação: 20110218-0911.

Edit: Reduza um pouco:

<?xml version="1.0" encoding="utf-8"?>
<LinearLayout xmlns:android="http://schemas.android.com/apk/res/android" android:layout_width="match_parent" android:layout_height="match_parent" android:orientation="vertical">
        <ViewFlipper android:id="@+id/contextArea" android:layout_width="match_parent" android:layout_height="0dp" android:layout_weight="3">                       
        </ViewFlipper>
</LinearLayout>

E um pouco mais de informação; API 8 no emulador: duas alterações na orientação da tela (Ctrl + F12) e falhas no aplicativo. API 10 no emulador: duas mudanças de orientação da tela e a tela permanece no modo paisagem, independentemente da orientação (embora o aplicativo não trava).

O que eu perdi?

questionAnswers(2)

yourAnswerToTheQuestion