2010年7月21日

炎炎夏日來去童玩節玩水

今年夏天天氣特別熱,不去玩水整天在家吹冷氣簡直太辜負上天的一番美意。夏天講到玩水的首選當然非童玩節莫屬,每年夏天腦子都想著要去朝聖一番卻一直無緣一探廬山真面目,看在今年是復辦的第一年,說什麼也要去觀光一下。

門票

一張350大洋的門票今年如果沒提早買優待票,現場買票就是 350 大洋(提早去iBon 買是 300)。園區入口對面有家商店在賣門票送礦泉水,如果想貪點小便宜可以去那家店買。

拿到票後猛然一看,這還是第一回看到這種玩樂的票有印上防偽雷射標籤,是我太少見多怪了嗎。

遊樂設施

進場後放眼望去是一池又一池又一池的水,水池中到處都是玩水的人潮,我想應該有上萬人同時擠在這幾個水池內吧。不像八仙有很多遊樂設施,這裡比較少大型的玩水設施,取而代之的是適合親子一起同樂的水上活動。

如果是跟朋友一起出去,去八仙會比較好玩,但如果是帶小朋友或是爸爸媽媽去玩水,那去童玩節準沒錯。
看到水心情跟著涼好大的泳池(誤)
大家玩得不亦樂乎天氣真好
噴到讓你張不開眼睛的水迷宮滿坑滿谷的人

其中推薦水床跟迷宮。

迷宮是黑色的圓球棚子,進去後會被來自四面八方的水噴到睜不開眼睛,撥完臉上的水又有水噴來,手忙腳亂中不知不覺就繞了一圈。

水床則是上去後很容易站不穩摔倒,除了要自己站穩外,還要想辦法害別人摔倒,管他認不認識,看到別人摔倒爬不起來就是個爽。

這才是人生

各個遊樂設施中午 12:30 ~ 13:00 會暫停噴水,去的時候玩沒兩項剛好遇到休息時間,超掃興的。如果沒中場休息,我想那些小孩子應該死都不會上岸吃午餐,商店的生意就會變差,美其名是讓大家休息,但背後應該都是$$$$$的因素吧。

玩累了,水池旁就是一片的休息區,主辦單位很好心的放了許多洋傘讓大家可以休息,但現場人那麼多,再多的陽傘也不夠用吧。

像我們這種晚去的,只能坐在樹下石頭上啃便當,不像台北一出門就是悶熱,這裡雖然太陽很大,但風也很大,即使大中午也是舒服的很。

超級 High-Net

除了這些水上設施外,今年來童玩節一定要挑戰的是橫跨冬山河兩岸的「超級High-Net」。以往只有在園區內有座 75M長的「High-Net」吊橋,但今年重新改版出發,整座吊橋橫跨冬山河,全長變成 220M,高 18M 約六層樓高,分為上下兩層。 去的時候走上層、回來走下層。
等等就要來去過天橋我要上天橋另一個角度
滿滿的排隊人潮高聳入雲霄180M的天橋

六樓有多高,沒多高啦,但有些人一上去就腿軟了,開始用坐的坐過去。最好去之前就做好心理準備,一定要去走一趟,不然就真的就白去童玩節了。
剛出發就有人腿軟YA 完成剛出發往回看過一半 回首來時路角度喬得不錯吧

也因為夠高,吊橋上的景色超好,可以一覽整個園區,慢慢走不會有人趕,如果膽子大一點可以在橋上多停一會,放開心胸欣賞風景。
從天橋上拍的遊樂園全景
連龜山島都看得到的全景

交通

天氣真的很好 我們出發的日子選的真好,天公作美,天氣超級好。這麼好的天氣我想去玩水,別人也想去玩水,星期六早上八點多,北二高還沒到國道五號閘道就排隊排的超長,回堵兩三公里有,比蘋果迷排 iPhone4 還誇張,更別說過了閘道還要再十幾公里才會到雪隧。

於是我們改走北宜,從下二高新店交流道,開過北宜到宜蘭也才一個鐘頭多一點,如果不想跟別人擠還是走北宜好,北宜的風景雖然不到超級漂亮,但比起塞在高速公路上動彈不得,還是走北宜的好,中途還可以在坪林休息一下,到了頭城界碑再去吃一下茶葉蛋,放假幹嘛擠在車堆中勒。

同場加映亞尼克蛋糕

爽 在海邊吃亞尼克準備開盒
很可口吧這是我的

回程時從基隆走北海岸回三芝。路過萬里亞尼克蛋糕順路去買了蛋糕,雖然常常經過萬里,但還是頭一次吃到亞尼克蛋糕。

傍晚時在海邊吃蛋糕真的很享受,一度有想要去海邊的咖啡車坐著喝咖啡、吃蛋糕,但念在今天花費過多就打消念頭,單純坐在吃蛋糕配海浪聲也不錯啦。

吃完在海邊吹海風總有一天會實現的

2010年5月21日

在 Android 2.2 Froyo 上開發者應該注意的事

froyo-android.png昨天是 Google I/O 大會的第一天,早上一起來就被 Day1 的部份 Session 嚇到說不出話,不是恐慌,是超級興奮。Google App Engine、GWT 這兩個一直有接觸的 Product 都有更新,而且是大幅更新。加上其他大大小小的更新,一天的時間根本來不及消化。

睡覺前照例打開 Google Reader 就收到 Android 2.2 SDK(Froyo) 發布的消息,不意外,但也來得太快了,本想說今天 Android Session 後才會發布,沒想到 Session 開始前就發布,大概可以猜出來今天又是熱熱鬧鬧的一天。

早上打開 Google Reader 前就有被 Android 2.2(Froyo) 攻佔版面的心裡準備,果不其然,十篇文章中有五篇是跟 Android 2.2(Froyo) 有關的報導,趕緊上官網下載新版本順便瞧瞧改了什麼。

一些新聞媒體會報導的改變就不說了,這裡主要是 Focus 在開發者應該會有興趣的改變。

版本更新

隨著新版本的發行,SDK Version 從 2.1 跳到 2.2,API Level 從 7 跳到 8。

有下載新版 SDK 的人應該會發現,存放 SDK 的資料夾,以往是以 SDK Version 做為資料夾名稱,現在則改成了 API Level。這跟當初 Java 在 1.5 的時候改名為 Java 5 有異曲同工之妙,Java 的說法是 5 比 1.5 看起來較威,難道 Android 改成 8 除了比較威,另外一個原因是為了壓過 Windows Mobile 7.0 跟 iPhone OS 4.0 嗎?
2010-05-21_132456.png

App2SD

眾所期盼可以安裝 App 到 SD card 上的功能在 2.2 上實現了,使用者在設定應用程式管理應用程式內可以看到新版本採用 Tab 區分不同類型的 App(以往是要按 Menu Key 選不同的 Filter 過濾出要看的 App),多了一個於 SD 卡的 Tab。
2010-05-21_141224.png

點選 Ap 後可以在手機內部記憶體跟 SD card 間自行搬移 App 存放的位置,前提是 App 要允許能夠安裝在 SD card 上。
2010-05-21_141335.png

為此,新版本 SDK 在 AndroidManifest.xml 內新增了 android:installLocation 屬性讓開發者決定程式是要安裝在內部記憶體還是 SD card 上,其值可以是 "internalOnly"、"auto"、"preferExternal" 三選一,但注意看 preferExternal 的說明

The application prefers to be installed on the external storage (SD card). There is no guarantee that the system will honor this request. The application might be installed on internal storage if the external media is unavailable or full, or if the application uses the forward-locking mechanism (not supported on external storage). Once installed, the user can move the application to either internal or external storage through the system settings.

但該做的事還是沒做,對開發者來說,Android 上並沒有一個很好的防盜版機制,雖然說 forward-locking 是防心酸的,但聊勝於無。現在安裝在 SD card 上的 App 連這一點點的小保護都拿掉了,這會讓更多開發商不想進入 Android 上阿。App2SD 對使用者來說是天大的好事,但開發商要的是防盜版機制,Android 快點拿出來吧。

雲端備份

這個功能真是太讚了,以往使用者重新安裝 App(非更新 App,更新 App 資料不會遺失),之前存在 Preferences 或內部 Cache 的資料會不見,如果要做到重安裝後還能保存之前的資料,要開發者自行處理。(嗚~我處理過)

現在備份這件事 Google 幫你作掉了,對開發者來說只需要撰寫一隻 Class Extend BackupAgentBackupAgentHelper,在程式內說明你要備份什麼資料,然後在 AndroidManifest.xml 設定一下 android:backupAgent,讓系統知道這隻 App 有備份功能。

需要備份時呼叫 BackupManagerdataChanged(),系統會在適當的時機呼叫你寫的備份 Class,然後把資料傳上 Google 自己的 Server。

當使用者重新安裝時,系統會自動把 Server 上的資料還原到手機內,背後的備份機制開發者完全不用理會,指定好要備份的檔案即可。

這功能還是 by User Account 的,用戶換手機後可以還原同一份資料,除非手機版本差異過大無法還原,照 Google 的說法,使用者完全感覺不到備份跟還原的存在,如果是這樣 User Experience 會非常好。

參考:Data Backup

OpenGL ES 2.0

在今年三月釋出的 Android NDK Revision 3 中已經支援 OpenGL ES 2.0,不過對於不會寫 C 的開發者來說,這功能離真正應用稍微遠了點。現在 SDK 內新增了跟 NDK 內的 OpenGL ES 2.0 直接對應的接口(稱 Wrapper 好像比較恰當),Java 開發者可以無痛直接呼叫 OpenGL ES 2.0 來使用。

效能應該會比原生 C 語言差一點,不過可以用、開發快速最重要,開發遊戲的人應該很高興看到這一點。

語音辨識

對提供語音辨識的廠商來說,新版本 SDK 允許第三方應用程式以 Plug-In 的方式,透過 RecognitionService 加入自己的語音辨識引擎。

以往在 Android 內有語音辨識需求時,都要打開某個 App 才能使用,例如 Google Voice 或是 Voice Go,現在則是可以讓使用者設定喜歡的語音辨識引擎,當有辨識需求時系統會自動呼叫辨識引擎,等於是主動幫你打開 App 使用。

原有舊版本在設定中的文字轉語音則被改成語音輸入裝置與輸出裝置,裡面整合了原有的文字轉語音語音輸出裝置)以及新加入的語音輸入,如果手機安裝了第三方的語音辨識引擎,就會出現在這裡。

這是安裝了 Android Sample Code 中的語音辨識引擎範例後的樣子(語音辨識引擎範例在 SDK 目錄下的 \samples\android-8\VoiceRecognitionService
2010-05-21_151114.png

對 App 開發者來說,當有語音辨識需求時,直接傳送 RecognizerIntent 給系統,系統會呼叫適當的語音辨識引擎來辨識,辨識完再把結果透過 RecognitionListener 回傳給 App,多美好的畫面阿,賽微科技,衝阿。

PS: 賽微科技已在 Android 上發表語音辨識輸入法(賽微輕鬆說)跟應用軟體(Voice Go),個人使用過覺得辨識度已經很好,去下載來玩玩吧。

強化的照相機

新版本 Android 提高了拍照時預覽的畫面更新率(Framerate),從 10 幾 FPS 增加到 20 幾 FPS,不過這只有拿到實機時才能驗證了。

另外新的 Camera Class 允許程式控制預覽時的 Zoom Level(呼叫 startSmoothZoom()),或是使用者改變 Zoom Level 時透過 OnZoomChangeListener 主動通知 App。

預覽時畫面的方向也不再固定是右撇子順手的橫向,可以透過呼叫 setDisplayOrientation() 來改變,有 0、90、180、270 四種可選。

Camera.Parameters 則提供了更多參數可以設定給 Camera 或是從 Camera 取得。還有 ThumbnailUtils 這隻小工具可以替圖片、影片產生縮圖。

放大縮小手勢

在支援 MultiTouch 的情況下,用戶最常使用的應該是用雙指來放大縮小螢幕上的圖片或網頁,以往都要自己寫程式碼來偵測放大縮小,現在新版本 SDK 新增 ScaleGestureDetector 讓開發者直接引用,不需要再自己寫啦。

原始碼在這,不知道有沒有人要改寫成支援 SDK 1.5 的版本,也就是第二指的 X、Y 座標是透過 MotionEvent.toString() 取得的版本,造福大家。

莫名其妙

ViewGroup.LayoutParamsfill_parent 被 deprecate,改成使用 match_parent,雖說 fill_parent 還是可以繼續使用,但沒事改這幹嘛?

Bug 回報

現在程式開發人員可以在 Developer Console 中看到自己程式的 Bug Report 了,這非 2.2 開發的程式限定,不管任何版本的程式都可以使用,主要是 Android 的手機都有一隻叫 BugReport 的系統程式在背景執行,

這對開發者來說真是一大福音,雖然無法精確到是哪個使用者做什麼動作造成的,但起碼可以知道程式是不是有發生大問題。如果還能看到使用者的評論跟線上回覆的功能就真的太美好了(做夢中)。
2010-05-21_162826.png

最後

Android 官網上關於 Android 2.2 更新的網頁中,跟開發者比較有關的是 Android 2.2 Platform 這一頁,文中大部份都是從這頁中擷取出來。有一些本身比較少遇到的 Topic,例如 MediaDevice policy managerAccounts and sync 就沒特別拉出來說明。

官網上的許多文章也隨著新版本釋出同步更新,Android Blog 中也有一篇介紹了這次的更新,那些都值得開發者一看。

這次新版本發表,扣掉這些跟開發者比較有關的項目,使用者應該也能很明顯感受到改變,Froyo 加入了 JIT Compilation、瀏覽器換上 V8 Javascript Engine,速度都大幅增加,光是這兩點就值得更新。

軟體 OK 了,接下來換硬體,會是搭載 Froyo 的手機先上市,或是 Nexus One 會先更新呢?Nexus Two 快出現吧

2010年5月14日

感謝 Google 你贈送的 Nexus One 收到了

DSC09379.JPG

感謝 Google,上週五收到贈送給開發者的 Nexus one 了!

之前在Google 拉攏開發商 免費賺到一隻 Nexus One中有提到 Google 寄信給開發者說他們要贈送 Nexus One 或是 Droid,當時是 3/3,後來 Google 也回信說二到四周會寄到。

等阿等,一個多月過去了,每天期盼有人來按門鈴但就是沒有,五月初終於忍不住寫信去問看看,翻開之前的信才發現,我寫給 Google 的電話號碼打錯了,心想該不會是這個原因,所以拖到現在都沒收到。

抱持著戒慎恐懼的心寫信給 Google 說我電話號碼打錯了,順便諂媚幾句我真的很想要手機之類的場面話。Google 很快速的回信,只提到我的手機已經在運送中,順便給了一個 FedEx 的 Tracking Number,連聲 Thank 都沒說,大概是被我填錯電話號碼這麼久以後才發現感到不耐煩吧。

管他的,知道東西已經寄出來就好辦啦,上 FedEx 查了一下,4/28 號從荷蘭寄出,4/30 到桃園機場,但已經卡在海關好幾天,總覺得海關是個很神秘的機關。第一次收到卡在海關的國際包裹,加上手機需要一些特殊的通關程序,卡個幾天應該是正常的。

過了兩、三天信箱又收到之前回信給我的那個 Google 員工的信,說 FedEx 聯絡不到我,如果我還要手機的話,叫我主動聯絡他們。擔心的事情發生了,真的是聯絡不到我以至於無法報關。

早上 8 點 FedEx 的服務電話開始時間一到,馬上撥去報告詳情,台灣人果然比較和善,跟我說的確是有人聯絡不到我,所以包裹才卡在海關那好幾天,晚點會有另外一位工作人員跟我聯絡。

11 點左右有位在機場負責報關的 FedEx 員工打來,態度非常和善,一直說不好意思,因為聯絡不到我所以包裹被拖延了好幾天。其實是我該說抱歉才是,手賤打錯電話號碼給人家添麻煩。在他的說明下,用最快的速度把他寄來的通關文件簽名、影印後寄回去,不到半個小時,他再度打來說包裹已經從海關領出來,下午會送到,折騰了好久終於聽到好消息,有燒香果然有保佑。

送到後二話不說先開箱再說,雖然已經開過一次 Nexus One,但再次開箱還是有種臨聖的感覺。Google 很貼心的附上一份文件表達謝意(應該是開發者要說謝謝吧)跟說明如何使用這隻手機。
DSC09367.JPG

DSC09370.JPG

DSC09371.JPG

仔細看外面的寄件人,是一家叫 BrightPoint 的公司寄出,上網查了一下原來這家公司是家全球通路商,主要專精於無線通訊產品的販售,在 2007 年跟 HTC 結盟,Nexus One 是 HTC 製造,因此委由 BrightPoint 負責送貨也不足為奇。
DSC09361.JPG

台灣製造,但是卻從荷蘭寄出,繞過半個地球,經過巴黎、廣東回到同一塊土地,何苦勒。看 FedEx 的運送紀錄更有感觸。
DSC09373.JPG
2010-05-15_005848.png

最後,還是要再跟 Google 說謝謝,用一隻手機換一個開發者的心,划算啦。

Related Posts Plugin for WordPress, Blogger...