Monday, January 24, 2011

神奇的 Mac OS X 10.6 Snow Leopard

要把 Mac OS X 10.6 Snow Leopard 光碟做成 ISO

結果隨便用 UltraISO 做出來的是失敗的,ISO 檔只有 700 多 MB

後來照這篇用 ImgBurn 而且把速度調成 1x 才成功轉出 7GB 多的檔案

How to Create ISO from Mac Installation DVD – Rip Mac DVD in Windows

Wednesday, January 19, 2011

終於知道 Acer 主機硬碟插槽怎麼裝硬碟


如上圖,要把硬碟螺絲孔卡進硬碟插槽前端的突出金屬上

說明書上完全沒提到,連客服的工程師都不知道的樣子,Acer 也真天才

而且要關機再裝,不然插上去 Win 7 馬上藍色畫面

Monday, January 17, 2011

成功使用 Mac VPS 完成 iPhone app 放進實機測試過程

iPhone UDID 可以從 iTunes 取到

Provisioning Profile 也可以拉進 iTunes 放進 iPhone

app 可以 Build and Archive 起來,然後產生 .ipa 檔案拉進 iTunes

所以整個開發與實機測試過程都可以在不接觸 Mac 實體機的情況下完成

只是直接將 iPhone 連上 Mac 還是有好處,像是可以用 Xcode 做 profiling

所以還在考慮之後要怎麼做

Sunday, January 16, 2011

從 iTunes 取得 iPhone UDID

參考這裡

在 iTunes 上點到 iPhone,然後在序號上點一下,序號就會變成 UDID

直接按功能表的 編輯 -> 複製 就會複製到 UDID

Monday, January 3, 2011

最常見的 Java 計算日期差方法是有問題的

最常見的 Java 計算日期差方法,就是取毫秒相減除以一天的毫秒數,但這方法其實有問題

之前在做日期相關的東西時,剛好看到這篇

Java - calculate the difference between two dates

他指出當2個日期包含日光節約時間的起始時,算出來的天數會少一天

他的範例程式用的是倫敦時區,不過 台灣也實施過日光節約時間

程式稍微改一下,就會發現台灣時區也有同樣問題

TimeZone.setDefault(TimeZone.getTimeZone("Asia/Taipei"));

Date d3 = new Date("03/31/1974 12:00:00");
Date d4 = new Date("04/01/1974 12:00:00");

結果:

133934400000
134017200000
82800000
Manual - Days between: 31-三月-1974 and 01-四月-1974 is: 0
Calendar - Days between: 31-三月-1974 and 01-四月-1974 is: 1


避免這個問題的方法
  1. Java 7 似乎會提供 JSR 310 裡面應該會有可計算日期差的 API
  2. 使用 Joda-Time library
 使用 Joda-Time 範例如下:

DateTime d1 = new DateTime(1974, 3, 31, 12, 0, 0, 0);
DateTime d2 = new DateTime(1974, 4, 1, 12, 0, 0, 0);
Days d = Days.daysBetween(d1, d2);
System.out.println(d.getDays());