2011-12-04 71 views
0

當我傾斜手機時,我的android應用程序崩潰並顯示強制關閉。有沒有什麼建議可以消除這種問題?順便說一下,我正在開發一個使用谷歌地圖(MapView)的LBS應用程序。

我有一個閃屏,然後如下圖所示一個ListActivity:
如何避免強行關閉手機方向的變化?

<activity android:name=".Splash" android:label="@string/app_name"> 
      <intent-filter> 
       <action android:name="android.intent.action.MAIN" /> 
       <category android:name="android.intent.category.LAUNCHER" /> 
      </intent-filter> 
     </activity> 

     <activity android:name=".Home" android:label="@string/app_name" android:configChanges="orientation" android:windowSoftInputMode="stateHidden"> 
      <intent-filter> 
       <action android:name="com.nepways.HOME" /> 
       <category android:name="android.intent.category.DEFAULT" /> 
      </intent-filter> 
     </activity> 


有什麼不對我的聲明中,閃屏負載,並列出活動也whown正確的,但是當我改變方位應用程序已關閉。請幫幫我。

+0

我們需要的代碼來幫你。如果你在清單中沒有做任何事情來阻止它,你的構造函數將被調用。後至少 - 代碼。 – Nanne

+0

'12-04 22:24:26.200:W/IInputConnectionWrapper(392):showStatusIcon on inactive InputConnection',這顯示在logcat中。這是什麼?並在活動開始時顯示另外兩個警告:'12-04 22:25:20.101:W/KeyCharacterMap(392):沒有用於ID 0的鍵盤''和'12-04 22:25:20.101:W/KeyCharacterMap 392):使用默認鍵盤映射:/ system/usr/keychars/qwerty.kcm.bin' –

回答

3

當你在logcat的改變你的方向活動重新啓動

  1. 一下,看看有什麼異常會導致您的應用程序到FC
  2. 你可以改變你的清單來禁用活動通過定製configChanges重新啓動,如果你stil有問題覆蓋修復什麼是產生這種異常(如初始化的東西,可能會導致一個空指針)
+0

請在上面看到我的評論並提出建議。 –

+1

呃這不是一個錯誤消息。如果有一個力量關閉,比logcat應該顯示一個紅色的錯誤跟蹤 –

0

如果你想避免重新啓動你的a對取向變化ctivity,您可以在清單文件中把這個活動:

android:configChanges="orientation" 

否則,我們需要看到更多的代碼,和堆棧跟蹤。

+0

請看我上面的意見和建議。 –

2

首先,正如所說的,每當您更改方向時,應用程序正在重新啓動(或參考重新繪製中所述)。 要阻止它在活動清單文件,你必須把這個線,介紹了活動的方向:

<activity android:name=".Splash" 
android:label="@string/app_name" 
android:screenOrientation="portrait">... 

而且這個按鈕,鍵盤映射或。說實話我ve got thise warnings sometimes but it doesn t改變我的應用程序中的任何東西。因此,首先改變方向設置,然後它應該正確工作。

如果你想使用其他屏幕方向記得這裏檢查: http://developer.android.com/guide/topics/manifest/activity-element.html