早上探索 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 二者中任何一方收購對方,不就成了一家親,那時便可以大家用大家的東西了吧?!^+++^