1. 程式人生 > >android模擬器執行APP異常

android模擬器執行APP異常

 初學Android遇到Unfortunately,xxx has stopped!真是一件讓人頭疼的事情,下面就遇到的兩種可能情況給出解決方案。通常遇到的情況在於由一個Activity跳轉至另一個Activity時發生。 錯誤截圖如下: Android之“Unfortunately,xxx <wbr>has <wbr>stopped!”

當遇到這種情況後請先檢視你的logcat日誌。然後看一看是否屬於下面的情況。 -------------------------------------------------------------------------------------------------- 第一種: 其中一種錯誤日誌包含有類似如下的語句: android.content.ActivityNotFoundException:  Unable to find explicit activity class {test.xxx/test.xxx.xxx}; have you declared this activity in your AndroidManifest.xml? 意思就是: 找不到Activity異常。 不能找到xxx類Activity,並且詢問你你是否已經聲明瞭你的Activity在AndroidManifest.xml檔案中。這種情況下很有可能是你的某一個要跳轉的Activity沒有在Activity在AndroidManifest.xml中進行宣告。宣告格式如下:

1.

<application>

2. <activity

3. android:name="test.activity.ResultActivity"

4. android:label="@string/nickname"/>

5. </application>

    其中test.activity.ResultActivity是你的Activity名稱,這裡你最好使用eclipse的提示功能然後選擇對應的Activity名稱。當然你也可以縮寫為.ResultActivity這時要注意,那個點不能少。除此之外Activity的宣告要放在<application></application>中。
-----------------------------------------------------------------------------------------------------     第二種:     同樣的檢視Logcat,如果日誌中包括類似下面的提示:     java.lang.RuntimeException:      Unable to start activity  ComponentInfo{xxx}: java.lang.NumberFormatException:  Invalid int:"factorFirStr"     意思就是:執行時異常。     不能夠讀取元件資訊,大括號內是出現異常的元件。具體錯誤是資料格式異常,最後給出了無效的整型變數"factorFirStr"(當然這個變數在這裡只是個例子)。     那麼解決的方法就是處理好這個變數。所以找bug是就從這個變數或者與這個變數相關的地方找。錯誤基本上可以肯定出現在這兒。看看是不是哪裡的語法什麼錯了,還是單詞拼寫錯誤,或是不該加引號的加了引號等等,這些大多是由於不信心造成。     這裡有時候還會提示......Invalid int: "null",這說明你的Activity在傳遞資料的過程中某個或幾個資料值為空型別,也就是值沒有傳遞成功,這是你可以考慮一下是不是Intent在傳遞過程中哪裡出現了不對。