2011-11-20 25 views
2

我的大學最近得到MonoDroid的在實驗室工作,我已經花了一整天試圖去處理它。強制關閉始終存在的Android設備上(即使很簡單的Hello World代碼)

然而,在建設基礎教程腳本到實際電話(Desire HD與Incredible S的),他們會立即彈出一個強制關閉的消息。

[編輯]好吧,在這裏。這是(在我看來),一個基於最初的monoDevelopProject的非常簡單的過程。

我已經離開了使用清晰的命名空間部分,這些都留給默認。

protected override void OnCreate(Bundle bundle) 
{ 
    base.OnCreate(bundle); 

    // Set our view from the "main" layout resource 
    SetContentView(Resource.Layout.Main); 

    // Get our button from the layout resource, 
    // and attach an event to it 
    Button button = FindViewById<Button>(Resource.Id.MyButton); 
    // on button click change button text 
    button.Click += delegate { button.Text = string.Format("You clicked the button!") }; 
} 

因此,這個編譯,構建和運行沒有錯誤的標準sdk 2.3 emu。但不是在實際的設備上。

我無法從設備檢索任何調試信息(我已經按照說明操作,以允許無線網絡調試)。在上面第3行包含的斷點(base.onCreate(bundle);)看來甚至沒有進入這個方法,只是在關閉後停止調試。

我會嘗試再次從設備進行調試,並獲得更多的細節。我可能弄錯了一些東西。

我剛纔想了幾個例子項目從xamarin Github上,從簡單的佈局,以全3D OGL實例和所有在我的設備上運行返回強制關閉的消息。我將研究一些編譯器設置並重新啓動系統

當我運行調試(綠色箭頭)時,它甚至不啓用暫停/停止按鈕(就像它應該在emu上一樣)。真的不知道什麼是錯的,就好像應用程序一發送到設備就被殺了一樣。我有一種感覺,因爲我現在已經在實驗室中嘗試了兩臺電腦,所以未在這些系統上正確安裝。

+0

您可以發佈調試輸出日誌崩潰? –

+2

這是很難調試你看不到的東西:)我建議[編輯]這包括作爲一個簡單的複製器,你可以建立和詳細的錯誤信息,你可以得到。 (特別注意編譯器警告。) – sarnold

+0

你可以嘗試刪除你的斷點嗎?當Android檢測到應用程序沒有響應時會顯示這個「強制關閉」對話框 - 調試器在等待斷點時就是這種情況。也許MonoDevelop沒有顯示斷點(或錯誤的文件),所以你可以嘗試沒有斷點或使用「運行」來繼續執行,看看它*是否解決了這個問題。 – poupou

回答

1

除了jpobst的答案,我會建議您可以獲取設備的日誌查看器並在應用運行時觀看。我與這些人沒有聯繫,但我發現自己一次又一次地使用他們的應用程序。 https://market.android.com/details?id=com.nolanlawson.logcat&hl=en

+0

謝謝,看來我認爲它沒有正確安裝是正確的。使用catLog我發現錯誤「錯誤:此版本的MonoDroid只能在Android模擬器中運行。」我會和技術支持人員交談,讓他們檢查安裝。 – McSteve

+0

當有疑問catlog似乎幫助。 NP。 – Terrance

0

OP說,他們已經解決了這個問題:

MonoDroid was not installed correctly in the labs, even though all information pointing to registration/authentication stated otherwise.

相關問題