我剛開始學習如何爲Android開發應用程序。目前,我使用Eclipse 4.2(Juno)作爲IDE。問題是我看不到正常的方式來查看我自己的代碼中發生的異常。例如:如何在Eclipse中調試Android時查看異常詳細信息?
public void onCreate(Bundle savedInstanceState) {
super.onCreate(savedInstanceState);
setContentView(R.layout.activity_main);
List<BasicObject> objects = _objectRepository.GetAllObjects();
Iterator<BasicObject> iterator = objects.iterator();
while(iterator.hasNext())
{
ObjectListItemView itemView= new ObjectListItemView(this,iterator.next());
}
}
在當onCreate
運行時間,_objectRepository是空,所以NullReference被拋出。之後,Eclipse顯示「Source not found」,這實際上並不是我所期望的。然後我多次按下F8(繼續);該進程退出並且調試器停止。只有在那之後,我才能在LogCat中看到一些堆棧跟蹤(從那裏很難導航到我自己的代碼)。
正如你所看到的,捕獲異常這一切的過程實在是耗時。有沒有其他的方式來查看異常,我做錯了什麼?
我不使用Android仿真器,我使用的是真實設備(HTC Desire S)。 我已經有LogCat,但我想要更方便/實用的東西。
爲了說明,在Visual Studio中,我可以在調試時看到異常。 Visual Studio的設置在哪裏發生異常,我可以看到我想要的任何信息的線路斷路(堆棧跟蹤本地變量,所有的東西實際上)在異常窗口(見The {not much utilized} Debug->Exceptions… window technique)。
在Eclipse中我得到異常的詳細信息在logcat中(這是非常不舒服的使用),只有調試器停止後。
我認爲「用VS」你不是指VS中的android? Logcat是android的一部分,eclipse只是提供了一個視圖(你可以在沒有任何IDE的終端窗口中看到相同的東西)。 – delicateLatticeworkFever 2012-08-11 11:42:30
抱歉無法找到我在哪裏寫「與VS」。我沒有在VS中開發android應用程序,我正在使用Eclipse。 – 2012-08-11 11:50:25
其實它是「例如在視覺工作室」;我的意思是logcat報告的延遲不是一個正常的日食事件。這是特定於logcat和Android和(我認爲)將在VS中相同。在異常報告給logcat之前,異常會觸發調試器,這就是爲什麼你必須恢復才能看到它在那裏報告。 – delicateLatticeworkFever 2012-08-11 11:54:57