2010年10月30日 星期六

Windows Phone 開發環境建置

最近正開始接觸 Windows Phone 7 程式開發,
說真的還蠻幸運的,目前實機取得似乎很不容易呀,

2010年10月19日 星期二

使用 alloca 或 malloc?

偶爾我們需要使用 malloc 或 realloc 來配置固定大小的記憶體空間,
使用上使用了這類指令,都要配上等量的 free() 或 delete 來釋放記憶體,
以免造成 memory leak 的狀況,當然也可以使用免 free() 的 alloca 指令。

error BK1513 缺少 xxx.sbr 的問題

開了很久沒開的一個專案想 Build 一個測試版本到新環境跑跑看,
結果卻發生缺少 xxx.sbr 的問題,檢查了許多設定都沒做錯,

2010年10月16日 星期六

Visual Studio 自動填入無作用與中斷點行數不一致的問題

在使用 Visual Studio 開發 C++ 專案時,有時寫了新類別時,
或是為了主專案的簡潔性而調整了檔案的位置至新開的專案時,
常常會造成自動填入功能失效,確定正確的類別,但按了 "." 或 "->" 卻沒東西跑出來,
當使用多個參數的 function 時少了自動填入的功能還頗令人苦惱,

2010年10月13日 星期三

在 Android 使用 Timer

有時必須用到簡單的計時排程功能,
以下兩個小範例示範實作 1000 毫秒的 Timer,
兩種方式需注意一點,使用 Timer 方式雖然簡單,
但 TimerTask 是在 Background Thread 被呼叫,
所以無法在 TimerTask 中直接操作 UI Element,
必須委托 main thread 的 handler 協助,

如何獲得 Android 裝置的電源管理資訊

若有需要,可以利用 android.os.BatteryManager 來獲得電源資訊,
方法和獲得連線、記憶卡資訊一樣,用收廣播的方式來獲得資訊,
以下是個小範例。

Android 使用 TCP 連線讀取資訊

簡單的 TCP 連線小範例,測試結果發現,TCP 連線真的很耗電的說。

2010年10月7日 星期四

為何 Windows Mobile 專案在 Visual Studio 下中斷點無反應

有時拿到新的 Windows Mobile 裝置時,
已經與 PC 做 ActiveSync 動作,部屬程式也可執行,
但下了某一行中斷點 (Break Point) 卻沒停在該停的地方,

Eclipse 偵測不到 Android 裝置或找不到 xxx.apk 問題

有時拿到新的 Android 裝置時,Eclipse 會偵測不到 USB 上的裝置,
導致無法在實機上執行程式的情況,
大概比較一下 "已經能被 Eclipse 辨識的裝置" 和 "無法辨識到的裝置" 這兩者的設定
發現只要在主畫面按下 Menu 進到 Setting/Application/Development 裡面,

2010年10月4日 星期一

Windows Mobile 上部屬 dll 發生佔用的情況

在撰寫 Windows Mobile 的軟體時,
利用 Visual Studio 將專案部屬到機器上應該是必做的一件工作,
有時後我們會將特定的 class、function、resource 等做成額外的 dll
好讓我們能夠在不動到主程式的情況下做到快速加入新功能或換圖等需求。

2010年10月2日 星期六

Android 上的 Permissions

在撰寫 Android App 時,時常需要調用一些平台上的資訊,
例如使用 TelephonyManager 查詢 IEMI CODE 等需求,
就以取得 IMEI 為例,在 Android 中是使用 getDeviceId() 這個 API

2010年10月1日 星期五

不使用 temp 變數交換兩個整數

在交換兩個整數時往往需要一個暫存變數,舉例如下。

mouse leave 與 mouse event track

在 C++/MFC 中雖然有 MouseLeave 的事件可以選擇,
但選了卻沒有反應,原因是必須加上 Track 追蹤滑鼠,
以下是在 MFC 上實作 Mouse Leave 和 Mouse Over 的簡單範例。