2011年3月16日 星期三

[Android] 第一次使用實體手機 + 清乾淨 + 重裝系統 @ Nexus One

== Updated @ 2011/04/26 ==


原先以為透過此篇操作可以把系統清乾淨,經過幾次研究後,發現 "重設為原廠設定" 和此篇 "Recovery from update.zip" 的過程,並不會真的清除乾淨。因為整個過程只能說依照上述兩者的 script 去更新資料罷了,例如 script 上面有提到要從 update.zip 裡面複製某個檔案到哪邊等等,這樣的過程只能說會清掉一些被動到的系統檔,但如果 script 沒有做的部分,那些資料將還是留在系統上。最簡單的驗證就是把 root 過後,安裝了 Superuser.apk ,接著使用上述兩種動作,並不會將 Superuser.apk 給移除。真正清乾淨系統的方式是透過 fastboot 清乾淨且重刷整個系統才算是正解。


=====================


終於等到一台 Android 手機可以操刀了,這大概算第二次接觸。第一次接觸是 G1 開發機,不過沒有 case 隨即就被擺進櫃子裡深睡,半年前被別人領走,從此與 Android 的緣份越來越淺。最近讀了點 Android 相關書籍,被其系統架構吸引,因此又去要了資源,這次終於要好好用這隻手機。


每次拿到一台手機時,基於安全龜毛考量,必須想盡辦法清乾淨,這台也是別人用了一年的手機。久聞 Android 環境的複雜性,這是我也體會到了,於是就下載一份說明書 nexusone-userguide,終於看了幾頁搞懂要怎樣清空資料:


[應用程式]->[設定]->[隱私設定]-> 重設為原廠設定


過程中可以順便清 SD 卡


如果只是單純想清光 SD 卡:


[應用程式]->[設定]->[儲存設定]-> 清除 SD 卡


看起來好像清完了?其實,最龜毛的應該是要把 OS 重裝,越 Open 的環境,代表別人可以更容易加料 XD 所以,我打算來重裝整個 OS 系統(此步驟僅供參考!並非適用各類手機情況,以及存在操作風險,請自行評估負責啊)


第一步:下載官方 android 2.3.3 update for Nexus One 


http://android.clients.google.com/packages/ota/passion/81304b2de707.signed-passion-GRI40-from-FRG83G.81304b2d.zip


第二步:將上述檔案更名為 update.zip 並移放到 SD 卡根目錄


若使用的電腦沒有偵測出 android 手機,可以試著到 [應用程式]->[設定]->[儲存設定]-> [卸載 SD 卡] 並在 [掛載 SD 卡],此時 android 手機就會問你要不要啟用 USB,如此一來就能夠讓電腦偵測出來。


或是直接從手機上方的 status bar 下拉,並手動啟動 usb


在 PC 端把資料移至記憶卡後,記得要先從 PC 端卸下外接記憶卡,接著才將手機 USB 上的關掉,如此一來可以確保資料有寫入到記憶卡中。(有時PC端寫入動作都是等到卸下外接裝置實才正式寫入)


第三步:將 android 手機關機


第四步:按住 [軌跡球] 後,接著按 [電源鍵] 開機,如此一來就會進入特殊選單,使用 [音量+/-鍵] 進行選單上下的移動,並使用 [電源鍵] 做為選擇


01


請選 [BOOTLOADER] -> [RECOVERY]


02


第五步:接著會看先看到 X 的 logo 圖,再過幾秒就轉成警告三角型跟 android 圖示,此時先按 [電源鍵] 再按 [音量+鍵] ,則會進入另一個選單


03


第六步:使用 [音量+/-鍵] 或 [軌跡球] 移動,挑選 apply sdcard:update.zip 項目,並點選 [軌跡球] 當做確認


04


第七步:使用 [音量+/-鍵] 或 [軌跡球] 移動,選擇 update.zip 檔案,並點選 [軌跡球] 當做確認


05


第八步:接著 android 手機就會依序進行更新動作,直到最後顯示完工


06


07


08


09


10


11


最後就可以到 [應用程式]->[設定]->[關於手機] 可以查閱系統資訊:


Android 版本:2.3.3
基頻版本:32.41.00.32U_5.08.00.04
核心版本:2.6.35.7-59423-g08607d4 android-build@apa28 #1
版本號碼:GRI40 


說真的,我有點著迷 Android 系統的架構,可以讓開發者很盡情的享受,雖然有兩點還令我有點反感:



  • 系統更新快

  • 使用 VM 環境


前者就像沒有跨平台的環境,每一次的升級都可能導致程式需要重寫,這點我還能接受,覺得系統升級的遠大目標算是可以贏過這個小缺點,後者 VM 環境讓我對它的效能很 case ,正是我不喜歡寫 Java 的理由。仔細回想,我學程式以來,第一熟悉的是簡單的 C/C++ 語言,第二熟悉語言正是 Java 啊,甚至用 Java 開發了一年的專題,沒有萬也有千行,並讓我真的了解"指標"的真諦,只是碩班後期開始比較常寫 C 時,對於記憶體掌控會很在乎,相較之下我還滿喜歡寫 Objective C 囉!


目前操作不到 10 分鐘的感覺,嗯,iOS 果然有極強大的 UI 介面,而 Android 則是給我感覺像潛力無限的功能機,剛好我重視功能性>>外表,卻也常常被 Android 的 VM 感到矛盾啦,所以有種很特殊的情感吧!不過站在一般使用者的角度,我覺得會偏好 iOS 的比較多,因為 android 的潛力是隱性的,一般人基本上是不會在意的,好用好潮就夠啦。


無論如何,很感謝 iOS 跟 Android 開發團隊,能夠提供如此好玩的平台,之後的目標大概式來編編 Android Open Source 並且打包成自製的環境吧,就像學 OS 時,要學著改一些小小的程式碼,就算開機印出個 hello world 也是很有價值的。(不知不覺又走回嵌入式?)


解決 CPU 100% 之 update.exe 和 svchost.exe @ Windows XP

今天碰到一位有 CPU 一直很吃重的問題,常見的就是 svchost.exe 吃資源,仔細一看偶爾會看到 update.exe 出現。初步先假定不是中毒問題的話,那可能的原因就是更新過程的問題,憑著粗淺的印象是要把更新檔的暫存檔移掉,讓他重新下載更新檔就行了。隨手記一下操作過程,因為我也忘了,跑去 google 才回憶起來。


流程:



  1. 停掉 Windows AutoUpdate

    • cmd mode 模式:net stop WuAuServ

    • 透過此步暫停後,才能將更新檔移除,否則動作時會說無法移除目錄



  2. 切換到系統安裝目錄,如 C:\Windows,找尋 SoftwareDistribution 目錄


    • 這邊將他更名為 SoftwareDistributionOld,可代表暫時移除的動作。

    • 當 Windows AutoUpdate 運行時會自動重建此目錄



  3. 啟動 Windows AutoUpdate

    • cmd mode 模式:net start WuAuServ




收工


2011年3月15日 星期二

就學貸款 利率 還款

差點快忘了這個件事,筆記一下 XDD 該留意的:



  • 要分幾期攤還

  • 利息要怎樣計算

  • 一個月要還多少


簡單來說,一切請看官方網站:台灣銀行就學貸款網站 https://sloan.bot.com.tw!就能搞定啦。


要分幾期攤還的問題,在 臺   灣  銀  行  就  學  貸  款  申  辦  程  序   (98年6月) 裡有提到:


七、


(二)      償還方式:償還貸款期限為貸款一學期以一年計,以此類推,償還期間之利息由學生自付。


就學貸款利率如何訂定?https://sloan.bot.com.tw/sloan/porFAQShow.do?id=314


由教育部與辦理本貸款之銀行協議訂定之。自97/11/17起學生負擔部分為按中華郵政股份有限公司一年期定期儲蓄存款機動利率加計加碼年率0.55%浮動計息;加碼年率依各承貸銀行逾期放款情形,每年檢討調整一次,由教育部公告之。


總之,預設貸款幾學期就還幾年,例如大學 4 年都貸款,代表 8 學期都貸款,等於要用 8 年還款,共 96 期!


假設大學一學期 4 萬,四年後共 32 萬,用 96 期來償還,本金每期 320000÷96= 3334 元,但別忘了還有利息,假設年利率 1.66% (包含 0.5% 浮動利率),粗算一年利息要 32 萬 x 1.66% = 5312 元,等於一個月 443 ,所以每月要繳約 3334 + 443 = 3776 元,若又計較起利息, 443 元 x 96 期 = 42528 元,就是使用這個服務所付出的服務費。(上述例子年利率是假設的)


對於計算方面,台銀也有試算表啦:就學貸款還款試算 https://sloan.bot.com.tw/sloan/porCalculatorPre.do 這個應該算的比較準,上述的算法利息很偷懶 XD 不過希望那個網站上寫的利率是真的 XD 因為我還不曉得該去郵局哪邊查


最後,一次還清還是比較讚的 XD 若不行的話,利息就當成支持此服務的服務費吧!另外,也可以有小錢的時候(例如工作獎金等),馬上清掉本金,如此一來,也稱得上一種投資囉!


2011年3月14日 星期一

-bash: warning: setlocale: LC_CTYPE: cannot change locale @ Ubuntu 10.04

大概是上次 apt-get update && apt-get upgrade 後吧?開始出現了這個問題,也就是平常使用指令時,想要透過 tab 鍵來 autocomplete 時,如 ls -la [TAB] ,隨即就會出現這個訊息:


$ ls -la-bash: warning: setlocale: LC_CTYPE: cannot change locale (zh_TW.UTF-8)


解法參考:http://ubuntuforums.org/showthread.php?t=1471876


$ sudo locale-gen zh_TW.UTF-8
$ sudo update-locale LANG=zh_TW.UTF-8


接著重新 login 就行了


為了避免以後又碰到,所以先筆記一下,畢竟現在管得機器都用共同帳號,這真的不是很好 Orz


2011年3月13日 星期日

熱血吧!

公益
輕鬆做公益:Yahoo! 公益 http://tw.charity.yahoo.com/


學生時代,因為經濟關係我連一張發票都不太會捐的。最近比較常去台北,每當有人在收集發票做公益時,卻發現發票都不在身邊,實在是我很少買東西,再加上時常縮減皮包厚度,像是零錢或發票幾乎都會每天清空,導致從事公益的機會少了許多,若是說有的話,大概是參加 BloggerAds 的公益聯播吧 XD 周日中午看到長輩在 Plurk 上分享了 Yahoo! 公益的網頁,設定一下還不妥,所以回到宿舍才來使用。對於捐款的公益團體嘛,仔細去 PTT 八卦版瞧了會,會發現很多八卦,頓時也讓我卻步。晚間跑了步,最後還是選擇在 Yahoo! 公益捐款囉。如果對捐款事宜想要挑選其他單位,可以再參考看看 台灣世界展望會政府單位的捐款資訊


大概半年左右沒啥動力,下了班常常枯坐在電腦前面。昨天聽到一位朋友完成了精湛的作品,頓時被敲醒。對方是在很操的工作環境,週末還有活動,但他終究完成了屬於自己獨一無二的作品,令我十分佩服!前幾天也看到熱血的學弟早上起來喝咖啡寫程式,我想回想起碩班努力寫程式的年代啊,今晚跑了個步轉換心情,再怎樣都要規畫好生活才對,努力,熱血吧!