2013-07-23 36 views
2

我在看我的紅寶石運動應用程序(「習慣」)在TestFlight崩潰報告的RubyMotion應用一個TestFlight崩潰報告和它給我:搞清楚

undefined method `active' for nil:NilClass (NoMethodError) 
2 Habits 0x004bd2f3 rb_rb2oc_exc_handler + 163 
3 Habits 0x0003a38b main (main.mm:20)... 

如何找出哪一行Ruby代碼觸發了這個錯誤?

回答

0

我幾乎和你一樣困惑,但我至少可以發表我的假設?我假設你不知道哪一行代碼觸發了這一點,因爲它看起來好像被捕獲的錯誤本身不知道它的來源:nil:NilClass (NoMethodError)

對我來說,看起來方法active試圖從尚未定義或沒有特定內存的類中調用,因此是NilClass

我可能完全偏離這裏,但這是我的見解。

+0

嗨,我不是要求幫忙搞清楚具體的錯誤 - 我想弄清楚如何讓崩潰報告指向我的Ruby源文件中的正確行。 –

0

看起來你沒有上傳.dSYM文件和你的版本。

如果沒有.dSYM文件,Testflight或任何其他iOS崩潰報告系統將無法連接編譯代碼和源文件之間的點。

要獲得符號化的崩潰報告(包括文件名/行號),您需要上傳.dSYM文件以及您的構建文件。

您可以查看TestFlight的文檔手動或使用自己的桌面應用程序在這裏包括.dSYM文件:

http://help.testflightapp.com/customer/portal/articles/829888-uploading-a-dsym-with-a-build-

也有RubyMotion的寶石,通過耙任務,爲您處理that process

https://github.com/HipByte/motion-testflight

我一直很高興地在我的項目中使用這個寶石。

+1

已報告的堆棧跟蹤**已被符號化,但缺少任何有價值的信息。這沒有幫助。 – Kerni

+0

是的,我已經上傳了一個dSYM,但我想我可能需要通過testflight-motion gem來代替使用TestFlight App。我將來會這樣做,但同時我想知道是否有任何方法可以理解當前的數據。例如。相對於這裏的+163是多少?我是否有足夠的信息返回到Ruby代碼? –