2009年11月16日 星期一

Android - How to build the android ?

(以ubuntu 9.10 為例)

1.取得相關的元件:

sudo apt-get install git-core gnupg flex bison gperf libsdl-dev libesd0-dev libwxgtk2.6-dev build-essential zip curl libncurses5-dev zlib1g-dev

PS.因為Java在ubuntu 9.10中只能安裝1.6但是Android只支援到1.5所以Java的部份會再後面再介紹安裝辦法。

2.取得debug tool :

sudo apt-get install valgrind

3.安裝repo
a.建立放置reop資料夾
$ cd ~
$ mkdir bin
$ echo $PATH
b.安裝curl

sudo apt-get install curl

c.下載repo並且放到指定資料夾

$ curl http://android.git.kernel.org/repo >~/bin/repo
$ chmod a+x ~/bin/repo

d.設定環境變數

4.下載Android Source Cdoe

a.建立放置Android Source的資料夾

$ mkdir mydroid
$ cd mydroid

b.下載Android

$ repo init -u git://android.git.kernel.org/platform/manifest.git

5.安裝Java 1.5(如果是ubuntu 9.04請利用apt-get 下載)

a.下載Java並且執行安裝

b.設定環境變數
$vim ~/.bashrc

加入以下參數:

export JAVA_HOME= <---記得更改成你安裝Java的位置
export JAVA_FONTS=$JAVA_HOME/jre/lib/fonts
export JRE_HOME=$JAVA_HOME/jre
export JAVA_PATH=$JAVA_HOME/bin:$JRE_HOME/bin
export CLASSPATH=.:$JAVA_HOME/lib:$JRE_HOME/lib:$CLASSPATH:$JAVA_HOME/lib/dt.jar:$JAVA_HOME/lib/tools.jar
export ANDROID_JAVA_HOME=$JAVA_HOME
export PATH=$JAVA_PATH:/android/tools:$PATH

6.編譯Android

$make

2009年10月9日 星期五

C/C++ : 字元陣列的應用

C/C++ 語言中,常用的字元陣列運用。
很常用,但是每次都忘記,乾脆在這邊做一個筆記好了!

1.字元陣列宣告:

CHAR chInputCharString[STRING_MAX_LEN];

2.函數宣告:

Void GetCharArr(CHAR pchInputString[]);

NOTE:[]<-不用輸入東西

3.傳入方法:

GetCharArr(&pchInputString[0]);

NOTE:[0]<-輸入零,代表取陣列一開始的位址

2009年10月8日 星期四

Hardware - 我的第一顆藍牙無線滑鼠-崑盈Genius Navigator 905 BT

最近家裡服役多年的L牌最簡單的光學滑鼠在經過多年的鞠躬盡瘁之後,終於在前一陣子不幸敗陣下來。加上最近幾年藍牙、無線風當道。身為一個科技阿宅怎麼能在這波風潮中錯過?


▲圖一、崑盈Genius的Logo特寫

於是在搜索過各大論壇及討論版之後,終於在Y拍買下這一顆崑盈Genius Navigator 905 BT的無線藍牙滑鼠。


▲圖二、Genius Navigator 950 BT

老實說,雖然使用滑鼠多年,但是真正擁有過得無線滑鼠經驗卻是零。雖然一開始也是傾向買已經使用相當習慣的L牌滑鼠。但是一看到售價,幾乎隨便一顆藍牙滑鼠,都叫價七八百以上。看得最近因為不景氣,而皮包很瘦弱的我,十分買不下去。於是心中產生了一個念頭!那就是為何不使用看看其他牌子得滑鼠呢?

▲圖三、產品包裝正面以及背面照

會選這一顆滑鼠的原因不外乎就是CP值很高!在Y拍上看到的價錢,約在600元上下。而且外型精美,並且去光華阿宅街實際試用的手感也十分不錯!因此在百般考慮之後,決定敗下人生第一顆藍牙無線滑鼠Genius Navigator 905 BT。

▲圖四、佛心的硬盒塑膠包裝易拆口

在收到產品那瞬間,其實心裡有點冷掉。但不是因為包裝不精美,或是產品不好!而是我碰到我最害怕的塑膠膜硬殼真空包裝!每次碰到這種包裝,心裡都十分害怕!原因無他…就是他真的太難拆了!為了拆這種產品,常常讓我的手被劃傷(這種產品尤其以記憶體最多)。但是在仔細端詳後,發現Genius雖然這顆滑鼠也是用塑膠硬膜包裝,但是在背後,卻很貼心了留下了易拆口!這種設計簡直就是專門為了我這種害怕塑膠硬殼包裝所作的!所以雖然還沒看到滑鼠本身,但是心中已經對Genius加分了不少!

▲圖五、內容物一覽

這一顆滑鼠算是CP值很高的滑鼠,價錢公道便宜、產品實在。不過相對的,包裝以及內容物就沒有那麼精美。不過沒有差畢竟我們是買滑鼠,而不是買包裝。內容物相當簡單,但是該有的都有:驅動程式光碟、電池以及兩片固定用的鉤子。這個鉤子是什麼呢?嘿嘿…且讓我賣個關子!這也算是這一顆滑鼠的一個小小亮點!雖然不是什麼很特別的創意,但是也讓這個產品增色不少!

▲圖六、正面特寫

接下來就讓本次介紹的主角隆重登場啦!

905BT的側邊採用的鏡面烤漆,在按鍵的部份是有點霧面的塑膠材質。雖然整顆滑鼠都沒有用到金屬殼。但是暗紅色的烤漆讓整顆滑鼠很有質感,也讓滑鼠的塑膠感不會那麼重。加上流線型的跑車設計,穩定中帶著一絲躍動的感覺,整體外觀表現的相當不錯,甚至還帶有一種時尚感!

▲圖七、外觀採類似法拉力一般的流線型跑車設計

操作方面,1600dpi的解析度,一開始真的讓我有點不太習慣。但是只要把滑鼠靈敏度降低一點,再多操作一下,也就沒麼大礙。有時甚至比以前普通的光學滑鼠更加順暢。

905BT採用的是AA電池兩顆,在滑鼠正後方有一個方形的小按鈕。只要一按下按鈕,按鍵部份的外殼就可以很容易的拆卸下來並且進行電池的更換。

▲圖八、背面特寫,正中間Logo下面的按鈕就是更換電池用的按鈕

傳輸方面,則是採用藍牙EDR2.0的通訊協定。這也是我當初要選這一顆的主要原因!這可以節省筆電上非常珍貴的一個USB埠。而且攜帶方便,不會有太多的線,讓我可以更方便的在座位與會議室中間快速來回。

▲圖九、放置電池的地方

接下來介紹905BT很特別的兩個亮點設計。分別是Stick-N-GoFlying Scroll。在公司常常開會嗎?還記得剛剛內容物介紹中的兩片小卡榫嗎?如果你是在公司常常開會並且也需要用到筆記型電腦的人,應該就有種經驗,就是會抱著一堆資料跟筆記型電腦。這時候還要分神拿著滑鼠。一個不注意,有時候「溜手」(請用台語發音),你的滑鼠很快就去親吻地球表面。這時候,假如你已經在會議上被老闆釘的滿頭包,我相信一般人國罵大概就直接脫口而出!而滑鼠呢?運氣好的是滑鼠整個散開,電池、殼、滑鼠散落一地,運氣不好,滑鼠就直接升天給你看。所以這時候905BT這個獨特Stick-N-Go的設計可以讓你把滑鼠「掛」在筆電上面帶著走!讓你可以在抱著筆電的時候不用在分神去照顧滑鼠!也免除了滑鼠掉到地面的危險。



▲圖十、背面採用3M黏膠,一旦要移除,保證不留痕跡

至於這兩片卡榫要怎麼固定在筆電或是你想固定的任何一個地方呢?很簡單,卡榫的背後,是類似雙面膠材質的黏貼物。只要撕下背膠就可以黏貼在任何一個你想要固定的地方。但是你一定會問,如果貼在筆電上,以後拿不下來怎麼辦?別擔心,這兩個卡榫的背後,採用的是3M無痕黏貼雙面膠。如果以後你想要撕下來只要根據說明輸的說明去移除保證不會在你的筆電上留下任何的痕跡!這也算是一個很佛心的設計勒!

▲圖十一、正中間的F鍵就Flying Scroll的特殊功能鍵

至於Flying Scroll則是當在瀏覽頁面較長的網頁或是頁面較多的文件(Word or Pdf)的時候,只要按住滑鼠正中間的F鈕並且移動滑鼠就可以捲動頁面的方便設計。身為工程師的我,常常需要看許許多多又臭又長的文件。有時候遇到那種需要一直捲一直捲的文件就覺得很累。這時候905BT的Flying Scroll的設計就會非常方便。但是有一點小小的缺點不得不提一下!就是不知道為什麼,當我按住中間的F鈕的時候,一開始總會鈍鈍的,能要稍微滑一下才會有反應。不過論壇及討論區都說,這是藍牙滑鼠都會有的共通毛病之一。也就是在滑動會捲動的時候都會多少有一點遲鈍。905BT在這點上面當然也沒辦法避免。但是遲鈍的程度,還算十分輕微,因此也不算什麼太大的問題。










系統支援Windows 7 / Windows Vista/ XP Mac OS X 10.2.8以上版本
按鈕數量4顆(左、右、中間與Flying Scroll)
解析度 (dpi)
1600 dpi光學引擎
電池
2顆AA 3號電池
連結規格
藍牙EDR 2.0規範



總合來說,這顆Genius 的Navigator 905 BT不論在外型、手感及特別功能設計上,都算是一顆非常不錯的滑鼠。其中Stick-N-Go和Flying Scroll這兩樣專門為商務人士所量身訂做的功能,算是非常實用。而且重點是價格不貴,功能卻超乎意外的好,可說是CP值很高的滑鼠。如果再把原本的乾電池換成可以重複充電的充電電池。這顆滑鼠就我個人來說,算是幾乎無可挑剔的普通藍牙無線光學鼠。




2009年9月30日 星期三

Linux - Firefox 3.x( 3.5.x or last version) 中文包

最近小素剛把ubuntu 9.04升級到9.10。
想當然,我的firefox也隨著升到了3.5.3。

不知道為什麼竟然是英文版的!
不過因為目前ubuntu 9.10只有到Alpha 6的階段!
等到未來正式版來的時候,應該就會變成中文版!

但是小素就是不想等到那時候,所以教大家可以去Mozilla release Firefox的地方自己抓語言包來安裝!
因為Firefox的語言包是以xpi的形式發布,所以可以跨平台使用!

ftp://ftp.mozilla.org/pub/mozilla.org/firefox/releases/(Firefox Version)/win32/xpi/zh-TW.xpi

大家只要根據你所使用的版本替代掉-Firefox Version 這個名稱就可以囉!

2009年8月26日 星期三

Android - 在uBuntu系統裡讓PC能透過adb 使用USB連接device

1.建立文件並且加入對應的內容

建立文件 vim /etc/udev/rules.d/11-android.rules
文件內容 SUBSYSTEMS=="usb", SYSFS{idVendor}=="22b8", SYSFS{idProduct}=="41db", MODE="0666"

建立文件 vim /etc/udev/rules.d/50-android.rules
文件內容 SUBSYSTEMS=="usb", SYSFS{idVendor}=="0bb4", MODE="0666"

建立文件 vim /etc/udev/rules.d/51-android.rules
文件內容 SUBSYSTEMS=="usb", ATTRS{idVendor}=="0bb4", ATTRS{idProduct}=="0c02", MODE="0666"


2.更改文件權限

sudo chmod a+rx /etc/udev/rules.d/11-android.rules /etc/udev/rules.d/50-android.rules /etc/udev/rules.d/51-android.rules

4.切換到放置Android的目錄下面

./adb kill-server

5.確認連線狀況

sudo ./adb devices

6.如果出現device就代表已經成功了!

參考來源:http://android-newbe.blogspot.com/2009/04/ubuntu-linux-gphone-android-driver.html


PS.20100114 更新加入另外兩個rule

2009年7月31日 星期五

Android - Windows 下,設定、安裝Android的開發環境(AP篇)

1.安裝JDK5 or JDK6
下載路徑位址:http://java.sun.com/javase/downloads/index.jsp
小素選的版本是 Java SE Development Kit (JDK)裡面的JDK 6 Update 14。

2.安裝Eclipse IDE 3.5
下載路徑位址:http://www.eclipse.org/downloads/
小素選的版本是Eclipse IDE for Java Developers。

3.下載Android SDK
下載路徑位址:http://code.google.com/intl/zh-TW/android/
目前可以選擇的最新SDK為
1.5_r3

4.解壓縮
Eclipse到任何一個位址

5.解壓縮Android SDK到任何一個位址

6.加入AVT套件進Eclipse
Help → InstallNewSoftware

WorkPatch 中輸入:http://dl-ssl.google.com/android/eclipse/site.xml
然後把下面視窗中「Developer Tools」勾選。
之後一直下一步。

7.把Android SDK的位置輸入進Eclipse。
Window
→ Preferences → Android → Location中輸入剛剛Android SDK的位置。

8.建立一個Andorid虛擬模擬器
Window → Android AVD Manager

Name : Android
Targer:Android 1.5-1.5
SDCard:64M
Skin:Default(HVGA)
按Create AVD就完成了!

9.建立Android專案。
File
→ New → Project →Android就可以建立Andorid的新專案

10.設定參數:
Project → Properties → Android → 勾選Android 1.5

11.大功告成!

參考來源:
1.http://code.google.com/p/androidbmi/wiki/InstallAndroid
2.http://groups.google.com/group/android-beginners/browse_thread/thread/bd837fc65fe3d9a1

2009年7月29日 星期三

Linux - 解決Flash開中文變成方格字

1.修改 /etc/fonts/conf.d/49-sansserif.conf

sudo vim /etc/fonts/conf.d/49-sansserif.conf

2.修改內容為:
PS.紅字部份為修改的地方,應該有兩個地方
------------------------------------------------------------------------------
<string >sans serif < / string >
----------------------------------------------------------------------------------
3.存檔之後,關掉firefox然後再開啟一次就可以了!