我出現在Android 2.3.5的手機上正常工作的應用程序,但崩潰。我添加了大量的Logcat消息,試圖發現這兩種設備的行爲差異。關鍵代碼(簡體),其中一些奇怪的事情發生在我的閃屏活動在這裏:診斷在Android 3.0模擬器不需要的onPause在Android 3.0的
public void onCreate(Bundle savedInstanceState)
{
super.onCreate(savedInstanceState);
this.setVolumeControlStream(AudioManager.STREAM_MUSIC);
requestWindowFeature(Window.FEATURE_NO_TITLE);
getWindow().setFlags(WindowManager.LayoutParams.FLAG_FULLSCREEN,
WindowManager.LayoutParams.FLAG_FULLSCREEN);
setContentView(R.layout.splash);
Thread timer;
timer = new Thread()
{
public void run()
{
try
{
sleep(2600);
}
catch (InterruptedException ex)
{
ex.printStackTrace();
}
finally
{
Intent in;
in = new Intent("android.intent.action.TTMODESELECT");
startActivity(in);
}
}
};
timer.start();
}
protected void onPause()
{
super.onPause();
finish(); // kill the launcher - free its memory
}
運行2.3.5設備我看到它開始然後完成休眠(上)然後啓動android.intent。 action.TTMODESELECT,但在3.0我看到它開始睡眠 - 但它永遠不會結束,而不是我的SplashScreen類的的onPause方法被調用套管精加工()新的活動可以開始之前之前進行。
任何想法我能做些什麼來解決這個問題?