新版Office中增加了一個全新的雲端App模式,開發者使用主流的網頁開發技術,如HTML 5、JavaScript等就能將網路上的服務打包成在Office內執行的App,例如Excel中用Bing地圖來呈現各地營業額。

微軟在新版Office中,增加了一個全新的雲端App模式,開發者可以利用主流的網頁開發技術,如HTML 5、JavaScript等,來開發Office內的外掛程式,也能嵌入各種網頁服務來呈現或處理文件內容,例如在Excel中用Bing地圖來呈現各地營業額。微軟將這種新型態的外掛程式稱為Office App(App for Office)。

這種Office App就像是在Office程式內執行的網頁應用一樣,可以用來存取文件內容,處理電子郵件,或轉換Excel數據等。

與傳統Office增益集程式(Add-ins)最大的不同是,Office App採用標準網頁技術開發,所以,不只能在Office程式中執行,同樣的App也可以直接在網頁版Office Web App上執行,甚至是在各種行動裝置上用瀏覽器來執行。

換句話說,開發者只要開發一次Office App就能讓使用者跨裝置、跨平臺使用。另一方面,大量現成的網路應用或在各種網路服務,也能以Office App的形式整合到新版Word、Excel或PowerPoint文件中。

例如微軟在Excel 2013預覽版本中,就提供了一個Bing Map的Office App,可以插入Excel文件中,將Excel中的各地營業數據,即時在Bing Map地圖上用派圖來呈現,使用者隨時更新數據或地點時,也都能立即反應到地圖上。

或像是在Word 2013中的Bing News Search,可以隨時將使用者滑鼠選取的文字內容,發送到Bing新聞搜尋服務中,找到相關的內容,呈現在與Word 2013文件畫面並列的視窗右側面板(panel)中。

用Ajax技術就能開發Office App

一支Office App是由網頁程式和XML資訊清單檔(manifest格式檔)組成,Office 2013程式會用一個沙箱中的Runtime執行元件,依據資訊清單檔上的設定來執行Office App的網頁程式,所以,Office App可以支援標準的網頁開發技術,包括HTML 5、CSS 3、REST API等。Office Web App則是會透過iframe語法來執行Office App的網頁程式。

微軟提供了一套Office的JavaScript API,可供Office App來存取Office文件的內容,這些API程式都儲存在一個Office.js檔中。Office.js提供了各種與Office文件內容互動的物件,包括如內容綁定、表格綁定、格式設定、非同步呈現、屬性設定、郵件物件、通訊錄物件等物件。另外還有一個Project-15.js檔則可提供Project 2013專用的API。

開發者可以運用常見的Ajax開發框架,例如jQuery來開發Office App,甚至是使用伺服器端的網頁程式,例如ASP或PHP技術來開發,但若使用了伺服器端的技術,則需要另外建置網站伺服器來執行這個Office App的網頁應用,而Office程式則是連線到網頁伺服器上使用網頁應用。

3種Office App類型

Office App依運用型態,可以分成3大類,分別是內容型App(Content App)、任務面板型App(Task Panel App)和郵件型App(Mail App)。內容型App的呈現內容會直接嵌入文件內容,例如前面提到的Bing Map App,會直接在Excel 2013試算表單中顯示地圖畫面,而任務面板App則是將內容呈現在與原有文件畫面並列的面板視窗中,例如Bing News Search。任務面板型App的內容不會嵌入文件中,而較像是並列的參考資訊。而郵件型App顧名思義就是Outlook郵件專屬的App類型,可以執行各種郵件功能。

不是每一個Office程式都能執行每一種類型的Office App,目前內容型App只能在Excel 2013和Excel Web App上執行,而任務面板型App則可以在Word 2013、Excel 2013和Project 2013中執行,另外郵件型App則只能在Outlook 2013或Outlook Web App中執行。

而原有的Add-ins增益程式仍然可以在Office 2013中執行,開發者也可以利用Add-ins開發技術來開發新的增益程式,但是Office App無法呼叫COM物件,換句話說,在Office 2013中,就會有兩種不同的外掛程式,一種是傳統的增益集,另一種就是Office App,兩者無法直接互通。

4種發布和訂閱App的管道

Office App有4種發布和部署管道。第一種是微軟推出了一個Office Store來提供這類App的訂閱和發布。開發者可以將Office App上傳到這個Office Store平臺中發布,而使用者只要使用微軟Live服務帳號,就能訂閱這些Office App,再安裝到Office程式中使用。

第2種則是SharePoint上的App目錄。企業則可以利用自建的SharePoint平臺或是微軟提供的Office 365服務來建立私有的App目錄,再搭配SharePoint帳號或AD帳號,來提供員工訂閱自製的Office App。

不過,Outlook 2013必須透過Exchange 2013伺服器才能訂閱郵件App類型的Office App,所以第3種發布管道就是Exchange的App目錄。

最後1種則是網路磁碟的App目錄。因為Office App其實就是網頁程式,企業可以建立一個共享的網路磁碟,將每一個Office App的manifest檔案都儲存到這個共享磁碟中,並在manifest檔案中設定對應網頁程式的檔案位置或網址。再將這個共享磁碟的路徑加入Office 2013的信任App目錄清單後,使用者就可以用Office 2013下載共享磁碟上的Office App。換句話說,共享磁碟中的檔案清單也就成為了一種Office App目錄。

從IE 9.0推出後,微軟積極擁抱網頁標準技術,不只是瀏覽器的支援,新版Windows作業系統也推出了使用HTML 5的Metro應用程式,能在平板電腦和手機上執行。現在,連Office App都支援。開發者只需要用一套網頁開發技術,開發出來的1支程式,就能通吃不同裝置、不同作業系統、甚至是在不同Office文件中執行。

Office App技術特性

◆  App檔案組成:網頁程式和資訊清單檔

◆  開發技術:標準網頁技術如HTML 5、CSS 3、JavaScript、REST API等。

◆  App類型:內容型App(Content App)、任務面板型App(Task Panel App)和郵件型App(Mail App)。

◆  App發布管道:微軟官方Office Store、在SharePoint建立App目錄、在Exchange伺服器建立App目錄、用網路共享磁碟建立App目錄。

◆  App支援版本:Word 2013可支援任務面板型App、Excel 2013和Excel Web App可支援內容型App和任務面板型、Outlook 2013和Outlook Web App可支援郵件型App、Project 2013可支援任務面板型App。

      資料來源:微軟,iThome整理,2012年8月


相關報導請參考「新世代 Office 來了!」


Advertisement

更多 iThome相關內容