»
S
I
D
E
B
A
R
«
一點發現
8月 19th, 2008 by admin

要成為人前的人談何容易,還是暫且當一個前人後面的人較好。

仔細參看了 Adobe AIR 的一個應用程式:
http://www.adobe.com/devnet/air/ajax/samples.html
這頁裏當中有一個 RoadFinder ,初時沒為意它是利用了 Google Maps 和 Yahoo! Maps。

然後慢慢探索為何它能夠做到不在網站內也能使用 Google Maps 且沒有 Debug Mode 的屏蔽圖示出現,結果也慢慢理解為何能做到用一組 API key 卻能避開 domain 的限制讓程式在不同使用者的桌面上載入地圖。

暫時找到的使用 HTML + AJAX 配搭 Adobe AIR 來編寫能載入 Yahoo! Maps 和 Google Maps。

雖然只是這樣,可能意味著未必能以使用 FLEX 的內置視覺效果來製造花巧的使用者經驗(User Experience),但現階段還能想到如何去因此搭配出一些原本想做的 CMS 的功能。在有這感通後,在編程之前先在這裏這樣記一下。

另外,也有點了解什麼是 SandBox:
http://help.adobe.com/en_US/AIR/1.1/

略略看過,至少了解為何要有 sandboxRoot 和 documentRoot 這兩個變數存在。

GOOGLE MAPS + FLEX + AIR != OKAY
8月 17th, 2008 by admin

早上探索 Flex 不同 Components 的使用方法,亦看過一籃子 Flex Applications。要做到其中一些,從資料庫提取資料轉化顯示,應該不難,然而在嘗試把 google map 放進 Flex + Air 卻遇到不少障礙。

先是低估了 Google 對 Api key 的要求,放眼網際暫時仍找不到方法繞過 Google Map API Key 而用 Google map。其次就是,雖然己有 Flex + Google Maps 或是 Flex + Yahoo! Maps 已有許多成功的傑作出現,依據官方教學也能做到目的效果,然而當把方案性質由 Flex 轉成 AIR 後,先是 DEBUGGER 會出一些錯誤,由 Debugger 顯示 “SECURITY ERROR”:

SecurityError: Error #3207: Application-sandbox content cannot access this feature.
 at flash.system::Security$/allowDomain()
 at com.google.maps::ClientBootstrap/allowLibraryDomain()
 at com.google.maps::ClientBootstrap/loadUrl()
 at com.google.maps::ClientBootstrap/internalLoadBootstrap()
 at com.google.maps::ClientBootstrap/executeNextFrameCalls()
 at flash.utils::Timer/_timerDispatch()
 at flash.utils::Timer/tick()

 到 “Launch failed” 為標題的錯誤警告視窗都出現過~

後來查出第二個錯誤是因為ADL當掉了,即是adl.exe,編譯 AIR 的執行程式,於是乎 Flex 未能召用它執行動作~

後來從一些討論區一些開發者的對談才得知 Google Maps 仍未對 Adobe AIR 作支援。那該怎麼辦?

Adobe 的解說:
http://www.adobe.com/devnet/air/ajax/articles/mapcache_on_air.html
(文末灰字處)

再看那些討論區,有說 Yahoo! Maps 支援 AIR 。只是 Yahoo! Maps 不夠 Google 的好看,不太想用。其他地圖提供者對歐美的地圖資料較詳細,但對亞洲的資料卻很缺乏,應該怎麼樣去抉擇呢?

之但是,還是嘗試用用 Yahoo! Maps API 玩玩吧~

———————————

雖然大家都說 Google Maps 不支援 AIR ,但這個網站卻聲稱利用 Flex + AIR + PaperVision3D 搭 Google Map 製出類3D 地圖:
http://www.beedigital.net/blog/2007/08/google-3d-map-made-with-adobe-air/

(之不過我卻安裝不了那應用程式,說版本經已不支援…)
———————————

查看資料期間得知 Google Maps 仍未對 Adobe AIR 支援有可能還跟法律有關。因為那些 Map 不屬於使用者,但 Adobe AIR 則是使用者置放於桌面的軟體程式。於是乎我又想,那麼 Google Earth 能成為 Desktop 軟體是什麼因由?是因為軟體是 Google 擁有之故?我不擅法律,不予置評,然而莫非 Google 或是 Adobe 二者中任何一方收購對方,不就成了一家親,那時便可以大家用大家的東西了吧?!^+++^

»  Substance: WordPress   »  Style: Ahren Ahimsa