不要使用Android Studio的Git Commit了---->記一次debug


今天下午寫了一些代碼,吃晚飯時分用Android Studio commit了一下,不知道有沒有選擇Commit and push,結果剛才代碼出bug我想回滾到上個版本的時候,發現Android Studio沒有上傳那份代碼!!非常難受,就像word寫了一下午文章結果電腦死機一樣。

我遇到了一個讓我摸不着頭腦的bug,好像只有每天晚上天黑之后才會出現這個bug,讀了幾遍代碼都沒發現症結所在,以至於我把系統時間都改成白天了。。。然而發現跟時間並沒有關系,所以想要恢復到下午吃飯時的版本。。。以后還是用終端吧,能看到上傳的進度提示。

------

May 5th 0:10 a.m.

剛才替換了中午寫的版本,發現並不是寫入數據庫部分的問題,因為那部分代碼完全一致。那么是什么問題呢。真是百思不得其解,我沒有在其他地方操作數據庫啊。我想起還在adapter中操作過數據庫。於是把中午adapter的代碼拿過來,但是還是一致啊,,然而,把同樣的194行代碼替換回原來的那兒,發現bug消失了。然后我又把剛才出問題的代碼拿來試試,仍然很順利。。我真的不知道這是什么鬼!!!現在是12:32,難道是過了12點的緣故??應該不是。

真的很怕這種莫名其妙的bug啊。。

-----

May 5th 10:40 a.m.

昨晚的bug是這樣的:加載recyclerView的時候不會update原有的table,而是insert到舊的table后面。

結果早上起來,什么都沒動,bug就莫名其妙的消失了。我記得非常清楚昨晚睡覺之前兩部手機上安裝的APP都存在這樣的bug。我都有點懷疑自己精神分裂了。。

剛才把所有warning清了一下,包括我懷疑的SimpleDateFormat的第二個參數,現在我把它指定成了Locale.CHINA。

檢查了一遍所insert table的地方。 

----

May 5th 12:21 p.m.

抓到蟲了。去吃飯然后參加ingress FS了。變量太多了太混亂了。

 

May 5th 19:00 p.m.

上面的錯誤可以很清楚地看到,log中提示numCount不知為何變成了0,導致執行了insert而不是update。numCount是一個全局變量,用到的地方太多。

我直接取消了在這部分使用numCount這個變量,而是直接用root.getInt("count")來獲取。

另外,舊的代碼讀起來自己都覺得繞了,索性直接把更新數據庫部分的邏輯重新整理了一遍,今天(今次)數據條數>昨天(上次)數據條數的情況,和今天(今次)數據條數<昨天(上次)數據條數的情況,分開寫了(雖然代碼重復了一部分,但是脈絡瞬間清晰了不少)。

 


免責聲明!

本站轉載的文章為個人學習借鑒使用,本站對版權不負任何法律責任。如果侵犯了您的隱私權益,請聯系本站郵箱yoyou2525@163.com刪除。



 
粵ICP備18138465號   © 2018-2025 CODEPRJ.COM