輔助功能*

Apollo 文章

產品資訊

什麼是 Apollo?
Apollo 是由 Adobe 開發的 RUNTIME(執行程序), 允許開發者使用他們現有的 web 開發技術 (如Flash、flex、HTML、JavaScript、Ajax) 來建立和部署跨作業系統的桌面豐富型網路應用程式。
Apollo 能開發哪些類型的應用程式?
除了開發一些傳統的桌面應用程式外, Apollo 的主要目標是建立及部署桌面豐富型網路應用程式, 使得更為簡單易行。
我們在設計 Apollo1.0 套裝軟體時, 也正是為了這個目標: 將 RIAs 輕鬆部署到桌面。
Apollo 針對哪些開發者?
Apoll o針對現在正運用 Flash、Flex、HTML、JavaScript、Ajax 等技術來開發與部署 RIAs 的開發者。
Apollo 是否免費?
是的, Apollo RUNTIME 是免費 (與Flash Player、Adobe Reader 一樣)。
Apollo 何時發佈?
我們打算在 2007 年初發佈預覽版。
我們準備在 2007 年上半年正式發佈 Apollo1.0。
Apollo 支援哪些平台?
Apollo 1.0 將支援 Windows 和 Mac OS X 作業系統。
我們也正在測試其他將支援 Apollo 1.0 的平台。
Apollo 是一個 Web 瀏覽器嗎?
不是, Apollo 是一個運行在瀏覽器之外的跨作業系統 RUNTIME。
理論上你可以在 Apollo 上建立一個 web 瀏覽器。
Apollo RUNTIME 的檔案大小?
目前的 Apollo RUNTIME 大小是 5-9 MB。
值得注意的是, Apollo RUNTIME 只需下載一次。
Apollo 和 Macromedia 的 Central 有什麼關係呢?
雖然有不少 Apollo 團隊成員曾參與過 Central 的開發, 但是 Apollo 與 Central 沒有直接關係。
設計 Apollo 套裝軟體時我們參考了開發 Central 的一些經驗, Apollo 的代碼庫和 Central 的代碼庫是完全分離的。

開發

我能用哪些技術開發 Apollo 應用程式?
可以使用 Flash/Flex 和 HTML/JavaScript 或兩者一塊來建立 Apollo 應用程式。
基於 Flash 的應用程式可以包含基於 HTML 的內容, 基於 HTML 的應用程式也可以使用基於 Flash 的內容。
除此之外, Apollo 應用程式還可以與 PDF 檔案類型緊密結合。
我可以僅用 HTML 和 JavaScript 來開發 Apollo 應用程式嗎?
是的。
我可以什麼 IDE 來開發 Apollo 應用程式?
Apollo不需要特定的 IDE, 你可以你已熟悉的 IDE 來開發 Apollo 應用程式 (如 Flex Builder, Eclipse, vim, Notepad 等)。
我們將發佈一個命令行列工具包, 協助開發者用他們既有的 IDE 或編輯器來開發與封裝 Apollo 應用程式。
基本上,你可以用任何東西來建立 SWF 和 HTML 檔案。
我能用 Flash 開發工具來建立 Apollo 內容嗎?
是的, 只要你使用的 Flash 開發工具是支援 ActionScript 3/AVM2 的版本 (如 Flash 9 正式版)。
目前, 支援 ActionScript 3 的 Flash 9 預覽版 (代號 Blaze) 已經提供在 Adobe Labs 網站中下載
如何獲取 Apollo RUNTIME?
你可以通過一些方式獲取 Apollo RUNTIME, 目前包括:
  • 從 Adobe 網站下載
  • 從 Apollo 應用程式中取得被內建的 Apollo RUNTIME (在使用者未安裝 Apollo 的情況下)
我們也在探索一些其他方式,我們確信 Apollo RUNTIME 將很快被廣泛傳播。
在嘗試一些方式後, 我們將進一步談論這個問題。
注: 我們將在這個 podcast* 中討論關於此話題的更多細節。
開發者能將 Apollo RUNTIME 安裝程式放在他們自己的應用程式裡頭散播出去嗎?
是的, 除了直接建立、發佈跨平台的 Apollo 應用程式安裝程式外, 開發者也可以建立一個自定義安裝程式, 來檢測用戶是否已安裝 Apollo RUNTIME, 如果沒有安裝, 則先安裝 Apollo RUNTIME, 然後再安裝 Apollo 應用程式。
注: 我們將在這個 podcast* 討論關於此話題的更多細節
如何安裝 Apollo 應用程式?
像其他應用程式一樣, 用戶先下載一個安裝程式, 然後用滑鼠按二下點擊它開始安裝。
安裝過程取決於終端用戶所使用的作業系統, Apollo 提供一種安裝機制來適應當前的作業系統。
我們也在探索一些其他的安裝機制。
Apollo 中使用哪種 HTML/JavaScript 引擎?
我們將在 Apollo 中使用 Webkit 引擎。
這裏的 WebKit 引擎就是 Mac OS X 的 Safari 以及 KDE 的 KHTML 中, 使用的 WebKit 引擎嗎?
是的
Adobe 為什麼選擇 WebKit 引擎?
我們花費了大量時間來研究了一些可供 Apollo 使用的 HTML 翻譯引擎, 我們制訂了四大準則, 而 WebKit 正好符合:
  • 開源項目
  • 被開發者和終端用戶所熟悉
  • 小巧
  • 在移動設備上能運行良好
做最後決定是困難的, 我們認為此時 WebKit 是 Apollo 的最好選擇。
Apollo 使用 WebKit 會不會導致開發者需要申明一個新的 HTML 引擎?
不, 我們的目標是保持與現有的 WebKit 引擎完全相容, 這將幫助我們確保在基於 WebKit 引擎的瀏覽器 (如 Safari) 中執行的內容同樣也能在 Apollo 應用程式中運行。
Adobe 會向 WebKit 專案提交自己對 WebKit 引擎的修改嗎?
是的, 我們的將成為 WebKit 社區的成員, 積極地向 WebKit 專案交付我們所做的修改, 以提供參考。
這裏的 WebKit 和 Mac OS X 裏的 WebKit Framework 是一樣的嗎?
不完全一樣, WebKit Open Source 專案和 Mac OS X 上的 Apple WebKit Framework 是兩回事。
Apollo 是直接使用 WebKit 專案裡的代碼庫, 而不是Apple WebKit Framework 裡。
哪裡可以找到更多關於WebKit的資料?
你可以從下面得到更多關於 WebKit 的資料:
Apollo 應用程式之間能相互通訊嗎?
是的, 我們將提供一個跨應用程式通信協定 (IAC) 來輕鬆實現 Apollo 應用程式間的相互通訊。
Apollo 應用程式能夠直接與資料庫通訊嗎?
Apollo1.0 不能直接與資料庫通訊, 可以通過 ActionScript 來撰寫資料庫驅動程式 (使用二進位或 XML sockets) 讓 Apollo 應用程式和資料庫通訊 (本地和遠端)。
開發者/設計者對他們應用程式的外觀設計可以控制多少?
開發者和設計者將可以百分之百控制他們應用程式外觀。
我能在 Apollo 中重用現有的 Flex 2 代碼嗎?
是的, 實際上你不需要重寫任何代碼就可以在 Apollo 中執行現有的 Flex 程式, 除非你要用到特殊的 Apollo API。
哪些 Apollo API 將對開發者公開?
已經公開的 API 有:
  • 檔案的輸入與輸出 (File I/O)
  • 即時線上與離線狀態 (Online/Offline)
  • 視窗 (Windowing)
  • 複製到剪貼簿 (Clipboard)
  • 使用系統上的拖曳與放開 (System Drag and Drop)
  • 完整的網路 API 支援 (Full Network API support)
  • 本地的儲存與設定 (Local Storage/Settings)
  • 還有更多...
Apollo 應用程式能夠離線工作嗎?
是的, Apollo 將提供一組 API, 讓開發者很容易就能做出離線運行的連線程式。
開發者能否自行編寫代碼擴展 Apollo?
我們目前正在探討這一功能的可行性。
Apollo 提供應用程式更新機制嗎?
是的, Apollo 將提供一種機制,使應用程式易於更新。
Apollo 是一個 exe/projector 編輯器嗎?
Apollo 只是一個運行於用戶系統的跨作業系統 RUNTIME。
它的好處之一就是 Apollo 應用程式的安裝程式將會更小, 它不需要把整個 RUNTIME 引擎包含到每一個安裝程式中。
比起其他低階的方法, 它讓我們更容易將 Flash、HTML、PDF 等技術整合在一起。
它允許我們為用戶和 Apollo 應用程式提供一個更有規範、更一致性的安全模型。
Apollo RUNTIME 提供怎樣的安全模型?
我們的目標是提供開發者的需求與想要的功能, 同時也讓他們能夠建立安全的應用程式。
我們正在做一些關於 Apollo RUNTIME 的安全模型與細節工作, 不久我們將更新關於這問題的資訊。
我能用 Apollo 製作 CD-ROM 或者 Kiosk 應用程式嗎?
你將可以透過 CD-ROM 散播和安裝 Apollo 應用程式, 但是目前我們還不打算讓 Apollo 1.0 程式在不安裝情況下就直接從 CD-ROM 運行。
你也能將基於在 Kiosk 建立的應用程式部署到 Apollo RUNTIME, 需要重申的是, 這不是 Apollo 1.0 的用途所在。
Macromedia Central 程式能在 Apollo 上運行嗎?
不能。
Central 應用程式是用 ActionScript 2 建立的並且它針對的是 Flash player 虛擬機器的早期版本 (AVM1), 而且它依賴於 Central 的特殊架構。所以, Central 應用程式將不能在 Apollo 上運行。
Flash 8 或更早版本的 SWF 檔能否在 Apollo 上執行?
能, 但是 Apollo API 只能通過 ActionScript 3/AVM2 被 Flash 內容使用, 基於Flash 8/AVM1 的 SWF 檔祗能夠在 Apollo 中執行, 不能使用 Apollo API。

新聞資訊

從哪里可以交付關於我 Apollo 的特殊問題?
你可以發送到 wish-apollo@adobe.com
從哪里可以找到關於 Apollo 最新的新聞和資訊?
近期有關於討論 Apollo 的會議嗎?
是的, 在這裡*你可以找到關於 Apollo 的一些會議更新列表。

FAQ 信息

這是官方 FAQ 嗎?
是的, 這是一個關於 Apollo 的官方 FAQ。
它是由 Apollo 開發團隊負責人 Mike Chambers 所主持。
我如何回饋對此 FAQ 的意見和建議?
你可以回饋給 Mike Chambers。

關於譯者: Zell

熟悉 Flash、Dreamweaver、ASP, 熱衷於 Adobe 系列技術, 抱有以 Adobe 技術解決企業問題的美好理想, 擅長規劃、執行中小企業之 OA 系統設計與網站設計, 目前為 RiS (http://j2eemx.com) 成員。

關於校閱: 劉仲濱 (Bing)

研究網頁多媒體技術多年, 熟稔 Adobe 產品於企業應用, 擅長資訊軟體整體規劃、行銷, 具有專案管理及經營社群經驗, Web 2.0 亦為其近年擅長之研究領域, 目前為 RiS (http://j2eemx.com) 平台主持人。