好久沒發文了,距離上次發文已經一年了,總覺得該為這一年記錄下些什麼。
專題
11月中專題終於告一段落,最後的結果雖然不盡理想,但自己卻頗有收穫,不管對於Android App開發或者專案開發或者團隊合作及分工上面,我們也將開發出來的App上架在Google Play。
在整個專題的過程,從一開始的熟悉Java語法到Android SDK,我們都靠著自己自學、上網找資料到最後的幾個月才進行開發,開發過程中跌跌撞撞,現在想起來並沒有很周全的計畫及思考,最先完成的是課表功能,利用到學校e校園服務網解析HTML tag來擷取到課表,儲存到SQLite中,讓使用者能夠在手機上查看課表,也能使手機在上課中自動開啟靜音,這是一開始最初的想法,其中遇到幾個難題是登入e校園服務網的部分,這部分利用到HTTP方式將值帶入form中利用HTTP POST method達成,並且儲存了cookie到課表頁面,靜音的部分差點做到一半想放棄了,因為對Android中的AlaramManger及PendingIntent不是很熟,所以一直卡住,尤其是在PendingIntent的getBoroadcast() method,當初看書及網路上的資料都把requestCode設為1或0,但是這卻造成靜音的部分只能夠成功一次,可是利用LogCat查看程式都有設定每個上課及下課時間,最後才試出來requestCode在每個設定要唯一。
另外一個功能是WiFi登入,原本的構思是要當使用者在學校開啟WiFi將可以自動在背景登入WiFi連上網,最初想說一樣利用HTTP POST認證網頁達成,沒想到認證網頁的submit是利用JavaScript觸發事件,所以利用HttpPost類別無法成功,查了StackOverflow有人利用HtmlUnit完成,可是在中間遇到一些Class連結不到的問題也試著很多方式解決都無法成功,所以放棄了HtmlUnit,在這之前組長一直說利用WebView去完成,但是因為WebView要跑UI出來才能,這是最後一個方法,沒想到還是利用WebView去完成,WebView能執行JavaScript,我們不呈現出認證網頁,而是顯示認證訊息,結果雖然與預期的不同,需要開啟App後才能進行認證,不是與原本的想法利用Service在背景認證。
專題中,與組員們有時候會鬧的不愉快,但是最後都能大家講開,自己也體會到一點,有些事情是不能強求,也不是會照自己所想的去進行,或許有時候能退一步去想,依照每個人興趣、擅長的部份去分配,像開發出了App,除了需要用到技術面的程式之外,也需要進行行銷等。我們也有對程式碼利用SVN 來進行版本控制,最近也利用Trac來進行issue track與Wiki文件編寫等。
暑假
在暑假的時候沒有很認真的做專題,都在逃避。
從七月初開始補習,補習班距離學校要騎車五十分鐘,每次騎到補習班超累得,在補習班發現,很多人都很強,有幾個坐在我附近的聽他們在聊天應該是中興大學的,就這樣,幾乎每天早上到學校讀書,接近中午的時候衝去補習班,晚上再衝回宿舍,洗完澡後讀書。但是,忽然有一天在到學校時候,遇到專題指導老師,那時候超想要掉頭就走,但是發現已晚,只能硬著頭皮去跟老師打招呼,感覺老師在想東西,正當要擦身而過的時候,老師才問說,專題弄得怎樣,只好實話跟他說了。
最近
專題完後,放了快兩個月的研究所考試,要開始準備了,收拾好心情,只不過到現在,說的簡單,做起來真難,有時候在用上架的App會用到有bug,花時間處理掉bug,有人建議可以再加入貼心一點的設計,加上了使用者的建議,讀書也是斷斷續續的,沒辦法堅持,我也不知道怎麼辦,距離考試就在明年二月了,只能常常告訴自己,不能忘記自己的目標。
發佈留言