2009年12月8日 星期二

小丸子生日

其實已經過很久了啦~~不過相片一直放在相機裡,

忘了存在電腦,是我們結婚之後所過的第一個生日,

由於當天在台南,所以只有我幫他過生日,

算是一個很低調的生日…^^”

阿,蠟燭代表的是小丸子的體重,絕對不是年紀…

簡單的布置一下,其實還滿有fu的啦~~雖然背景亂了點…

小丸子心機重,故意躲到比較後面,這樣臉看起來比較小…

anyway,平凡就是一種幸福,希望每年都可以一起過生日 :D

沖牙器

是的,又來分享敗家的東西…

這次敗的是沖牙器,很奇怪的東西吧…

 

其實第四台也是有在廣告啦~不知道大家有沒有看過…

因為我爸長年使用牙籤的關係,所以齒縫很大,

吃飽飯後,經常卡了許多髒東西在齒縫當中,

他聽朋友說有沖牙器這種產品,就馬上打電話來叫我survey一下,

身為孝子的我,馬上上網google,發現有電子式直接接在水龍頭兩種,

當然囉,兩種產品的價格也是相差滿大的,為了怕老爸用不習慣,

所以就幫老爸買了直接接水龍頭的,老爸用了十分滿意,

上禮拜回家時,興致沖沖的叫我試用看看…我沖了半天,

好像沒啥東西阿~~結果老爸親自示範,果不其然,

沖出了一堆東西,有綠色的菜渣,還有一些不知名的…屑屑(?)

換小丸子沖的時候,也是一整個大豐收阿…(難怪我常懷疑他偷吃筍乾…)

小丸子深感這東西的好處,就叫我也買一個在寢室用,

太座有需要,我吭都不吭一聲,立即上網訂購!!

今天收到東西之後,馬上安裝在洗手台上,安裝還滿方便的耶,

不需要額外的工具就可以安裝完成了…試用了一下,

雖然宿舍六樓的水壓不強,但是沖牙器出來的水壓還滿強的耶…

我還用拿來沖洗手台角落的污垢,一樣沖的乾乾淨淨的,

沖髒東西還滿有快感的…還不錯用啦,推薦給大家~

雖然貴了點…(迷之聲:成本大概不到一張國父吧…)

2009年12月7日 星期一

OMRON 血壓計



去年幫家裡買了一台血壓計,主要是老媽血壓高的嚇人,
去彰基的時候,一度高達190...嚇壞了我跟老爸,
從那時候老媽才開始吃高血壓的藥物控制,
那時候買大概是2000左右,前幾天去家x福買東西時,
發現在特價1688而已,貪小便宜的心態馬上浮現,
二話不說立即購入一台...
這幾天量到的高血壓,大概是131,是在吃飽飯後...
一般大概是115左右,所以應該還在健康範圍啦~

多運動才是常保健康的不二法則,
希望大家身體都要健康喔 :)

2009年12月3日 星期四

Android SDK 2.0 取得聯絡人電話及e-mail

最近在練習取得聯絡人資料時,總會發生Exception...
上網Google了一下,
才發現原來Android 2.0 SDK改了一些關於聯絡人存取的API,
如果使用了
import
android.provider.Contacts;
import android.provider.Contacts.People;
就要特別注意一下,
因為在android 2.0 SDK當中不建議使用,
請改用
import android.provider.ContactsContract;
import android.provider.ContactsContract.PhoneLookup;


要取得聯絡人的姓名sample code如下:
final Cursor people = getContentResolver().query(ContactsContract.Contacts.CONTENT_URI, null, null, null, null);

while(people.moveToNext())
{
int nameFieldColumnIndex = people.getColumnIndex(PhoneLookup.DISPLAY_NAME);
String contact = people.getString(nameFieldColumnIndex);
}

奇怪的事,如果要取得聯絡人的電話
如果用
int nameFieldColumnIndex = people.getColumnIndex(PhoneLookup.NUMBER);
String phone = people.getString(nameFieldColumnIndex);

nameFieldColumnIndex return回來的值總是 ─1,

上網google了一下,找到瞭解法,

1. 首先找到目標聯絡人的
_ID,例如要找第一個聯絡人的_ID
Cursor target = getContentResolver().query(ContactsContract.Contacts.CONTENT_URI,null, null, null, null);
target.moveToFirst();
String contactId = cursor.getString(
target.getColumnIndex(ContactsContract.Contacts._ID));

2. 接著透過_ID,來找電話號碼,電話號碼可能不只有一個,所以先判斷有無電話號碼

String IsPhone = cursor.getString(cursor.getColumnIndex(ContactsContract.Contacts.HAS_PHONE_NUMBER));

3. 如果有電話,接著再去query電話號碼

if( (Integer.parseInt(
IsPhone) > 0) )
{
Cursor phoneNumber = getContentResolver().query(ContactsContract.CommonDataKinds.Phone.CONTENT_URI,null,ContactsContract.CommonDataKinds.Phone.CONTACT_ID +" = "+ contactId,null, null);
while (phones.moveToNext())
{
String strPhoneNumber = phones.getString(phones.getColumnIndex(ContactsContract.CommonDataKinds.Phone.NUMBER));

}
}

** 如果要查詢e-mail,程式如下
Cursor emails = getContentResolver().query(ContactsContract.CommonDataKinds.Email.CONTENT_URI,null,ContactsContract.CommonDataKinds.Email.CONTACT_ID + " = " + contactId,null, null);

while (emails.moveToNext())
{
String emailAddress = emails.getString(emails.getColumnIndex(ContactsContract.CommonDataKinds.Email.DATA));

}


**只有在emulator上測試過,沒有在實際的機器上跑過

2009年11月24日 星期二

Android 客制化原件

以TextView為例

1. 新增一個class,去繼承TextView

2. Override OnDraw(Canvas canvas) ,
例如對TextView畫框線,
canvas.drawLine(0, 0, getMeasuredHeight(), 0, linePaint);
畫完之後,需要呼叫canvas.save();
接著呼叫 super.onDraw(canvas);
最後需要再呼叫canvas.restore(); //相對應於canvas.save();

3. 新增一個XML檔案,來描述這個客制化的TextView layout

2009年11月19日 星期四

Android Activity life cycle



節錄自
http://developer.android.com/images/activity_lifecycle.png

2009年11月18日 星期三

Android上網程式

今天使用Intent要開啟網頁時,發現emulator沒辦法連上網路,
google了一下才發現,原來SDK對於網路控管的關係,
所以需要在專案下的androidmanifest.xml裡,加入


uses-permission name="android.permission.INTERNET"
要用<>括起來

這樣程式就可以開啟網頁了,

此外,透過Eclipse中的SDK and AVD manager開啟emulator,
emulator效能似乎不是很好耶,在command mode底下,輸入
emulator -avd vmname -no-boot-anim
來開啟emulator,速度比較快一些~~

2009年11月12日 星期四

兩個MySQL 同步

要如何同步兩個MySQL中的DB?

環境:
A電腦要同步DB至B電腦
A電腦 master,IP:192.168.50.222
B電腦 Slave,IP:192.168.50.112
OS : Windows XP
DB: MySQL 5.1

Master的部分
1.
在MySQL command line底下,輸入
GRANT REPLICATION SLAVE ON *.* TO backup@192.168.50.112 IDENTIFIED BY '1234';
其中backup是帳號,192.168.50.112是B電腦的IP,1234是密碼

2.
建立"backup"資料庫,並複製到B電腦,路徑在
C:\Documents and Settings\All Users\Application Data\MySQL\MySQL Server 5.1\data\backup


3.
開啟C:\Program Files\MySQL\MySQL Server 5.1\my.ini
在 [mysqld]後,加入
server-id=1
log-bin # 產生紀錄檔
binlog-do-db=backup #同步的資料庫名稱

4.
重開資料庫,看設定是否成功,在MySQL command line輸入
show master status \G


Slave的部分
1.
開啟C:\Program Files\MySQL\MySQL Server 5.1\my.ini
在 [mysqld]後,加入

server-id=2
master-host=192.168.50.222
master-user=backup #同步用戶帳號
master-password=1234
master-port=3306
master-connect-retry=60 #預設重試間隔60秒
replicate-do-db=backup #告訴slave只做backup資料庫的更新

2.
重開資料庫,看設定是否成功,在MySQL command line輸入
show slave status \G

**如果修改my.ini的話,需將
C:\Documents and Settings\All Users\Application Data\MySQL\MySQL Server 5.1\data\master.info
刪除,之後再重新MySQL,

2009年11月2日 星期一

希臘蜜月 – day 9~10 - 新古典主義三大建築 宙斯神殿 返程

呼,終於寫到最後一篇了,我竟然拖了半年才寫完…

呵,不過總算是有始有終啦!!

最後一天的早上,是自由活動的時間,我們跟著導遊前往市區觀光,

一般名牌族的,會跟著導遊去購買包包、配件,

而我跟小丸子沒啥錢,只能在市區附近拍拍照,

首先,我們搭捷運前往市區,

一早的捷運站,冷冷清清,希臘的捷運站,與車廂,

都沒有冷氣喔~~真是佩服他們可以忍受酷熱耶~

這是他們捷運的路線圖,好像可以直接從機場坐到市區,

首先,我們要去參觀新古典主義的三大建築,

先到的是雅典學院,

柱子左邊的是雅典納,右邊的是阿波羅,

兩位高高在上,似乎就像是神明一樣睥睨著世人,

另外還有兩個哲學家,俗辣跟ㄅㄨˊ阿~

蘇格拉底跟柏拉圖啦~~

 

雅典娜的英姿~又聰明,又會打仗,果然是神阿!!!

拿著七弦琴與金球的的太陽神阿波羅,也是不遑多讓,

除了射箭一把罩,音樂也是難不倒他,

山牆上有宙斯以及其他的神祉,

雅典是不是很乾淨呢?看了就知道…哈~

接著,我們來到了雅典大學,

門口的兩根Ionic柱子,格外的醒目

 

大家可能覺得奇怪,雅典大學就這麼小阿~

其實他只是一個辦事處而已啦~真正的雅典大學在是在其他地方

前晚似乎有抗議民眾在地上塗鴉,清潔人員正在清洗當中,

而後面的雕像,似乎正在監工似的,很有趣~

接著,我們來到了第三棟,雅典國立圖書館

 

門口的柱子,是Doric式的,模仿火神殿而建造,

 

這隻是獅子嗎?

突然間,發生了一間慘事…小丸子的手被咬到了!!!

 

……………原諒我們在圖書館前耍白痴

一整排的老鷹,還滿壯觀的

昨天中午吃飯時看到了陳唐山前院長,想起他的PLP之說,

好啦,我就為大家示範如何PLP………………

哈哈哈~~~有點小,不過意思到就好了…

接著,看到一隻姿勢很像古小登的動物…我忍不住衝過去跟他握手…

這個小攤販,賣的是希臘人早餐吃的食物,

因為沒有買,所以不好意思近拍~

 

離去前再拍一張吧~~

這隻小白悠閒的躺在草皮上睡覺,真是太好命啦~

接著,我們用步行的方式,前往宙斯神墊,

沿途有走走拍拍,滿愜意的~

 

這種bus上面沒有車頂,應該是給觀光客搭乘的吧~

 

很想買個餅來吃,試試味道,可是肚子實在太飽啦~

看到辣妹,趕快按下快門~

一樣是背影,怎麼差那麼多…………

這間位於憲政廣場的飯店,是雅典最高級的喔!!

憲政廣場

走阿走阿,好不容易,終於走到了宙斯神殿,

這個門叫做Hadrion's Arch,在羅馬時期建造的,主要區隔舊區及新城區~

 

將將將~~~宙斯神殿要出現啦~~~

是的…那幾根柱子就是遺跡,是西元二世紀的時候,

羅馬皇帝建造為了獻給宙斯的,原本有104跟柱子,

據說裡面還有個巨大的宙斯神像,如今,就只剩15根柱子當代表了…

有興趣的可以看這裡

遙想當年的盛況,如今真是不勝欷噓阿~

在這廣場上,也可以看到山上的帕得嫩神廟

雕刻精美的柱頭

高度真的滿高的!!

 

諾大的廣場

我跟小丸子兩個人,想說這裡地靈人傑,在這裡打氣功,

應該可以吸收到很多”神氣”吧~~

  

看時間也差不多了,回去跟導遊集合,順便寄出最後的明信片~

今天中午,吃的是台灣菜耶,歐耶~~感動得快哭出來啦~

第一道上來的是湯,這酸辣湯實在是太好喝啦~~

好幾天沒喝到這麼好喝的湯啦~~

再來是…

對不起,因為太好吃的關係,沒心情拍照啦…哈~

我記得有豆豉排骨,炒青菜,菜圃蛋之類的,

對於吃不慣洋食物的我們,幾乎每盤都盤底朝天~

接著,我們便前往機場搭機,準備返回最可愛的台灣了~

在機場看到可愛的海綿寶寶巧克力,買給小朋友當禮物~

這是我們要搭的班機~一樣是泰航,要在曼谷轉機~

這幾天承蒙導遊黃sir的照顧,真的是辛苦他了~

大家如果想去希臘玩,或者是知道一些希臘的資訊,問他準沒錯的啦~

他相當的認真、負責,也很照顧到每個團員的需求喔~超推!!!

他的部落格 - 半個希臘人家族

我們的機票

再見了,希臘~~

希望有機會可以再來這裡觀光~~

起飛沒多久就上了餐點~也是最後一張照片啦~~

是泰國菜,口味普普~~

其他的因為太累了,所以就沒拍了…哈~

 

很開心有這個機會前往希臘度蜜月,希臘真的是一個很easy,很lazy的國度,

跟台灣緊湊的生活步調截然不同,行千里路,勝讀萬卷書,

回來台灣後,才發覺台灣的可愛,相對便宜的物價,

以及吃不完的美食,對我而言,台灣雖然不是最完美的,

卻是最棒的一個國家!!!

當然,有機會的話,希望可以多多去國外走走,因為真的太好玩啦~