2012-08-09 43 views
0

我在尋找什麼我「應該」爲特定的項目,我一直在問的研究要牢記一些建議。通過探索各種Google技術,我一直這樣做了大約3天,但沒有一個看起來很正確。我應該使用什麼樣的技術來構建的Gmail擴展

我需要把共同爲Gmail的東西是大致相當的東西我已經把用於Windows的Outlook。我將在此簡要介紹我爲Outlook用戶所做的工作,以便讓您瞭解我在尋找什麼。我將Outlook C#AddIn放在一起,Outlook在啓動時加載時會在Outlook界面中添加一些可點擊的選項卡,按鈕和其他各種界面元素。當您單擊它們時,我的外接程序中的C#代碼會以各種方式調用,以執行各種活動,例如歸檔當前在由我們的某個Web應用程序管理的遠程數據庫中選擇的電子郵件。它通過調用各種可用於任何加載的AddIn的Outlook C#API來提取或操作各種Outlook「對象」。它在點擊按鈕時做的另一件事是調用AddIn從.Net類「webbrowser控件」實例創建的Web瀏覽器,本質上將IE添加到IE「引擎」中。它還將所需的東西添加到該Web瀏覽器的DOM中,以便通過可能在該瀏覽器的頁面中運行的JavaScript代碼來調用大量的Add-In C#函數,實質上爲我們的Web應用程序提供了一種「詢問」我的AddIn代表該應用程序創建Outlook聯繫人,任務,消息等。其要點在於,我添加到Outlook應用程序的UI可用於對我們的應用程序進行各種Web服務調用(基於通過Outlook C#API可視/可管理的各種Outlook「對象」的狀態),並且Outlook應用程序的狀態可以通過運行在Web應用程序頁面中的JavaScript代碼來操作,該代碼恰好在它創建的Web瀏覽器中加載。

我需要支持對於「相似」功能的完全不同的Gmail獸(而不是Windows應用程序的基於瀏覽器的Web應用程序)。我感覺有點像我在調查過程中最近幾天一直在旋轉。我開始研究gmail Sidebar和Contextual gadgets,爲我的gmail添加一些大致相同的UI,但很快就發現我無法使用任何gmail API來使用它們,只是試圖強化我的內容一組觸發的gmail「行爲」由上下文小工具支持,我開始意識到這並不足以支持我想要的東西。最後,我瀏覽了一組描述Google Apps腳本的開發者頁面,這些頁面描述了Google Apps腳本在功能上的支持情況,這似乎是「走向」的一個時期,爲我提供了gmail API中的鉤子。我和他們玩了一下,製作了一個網絡應用程序腳本來收集我所有Gmail郵件的主題行,並將它們轉儲到腳本構建的用戶界面中,以便快速瞭解實際情況。該腳本的作品,但它似乎很慢,大約需要一分鐘收集和顯示57電子郵件主題行。我無法弄清楚如何將任何腳本構建的UI導入到gmail用戶界面中。我試着用引用了我的應用程序腳本的URL(在內容標記主體中根本沒有HTML或JavaScript)構建一個側欄小工具。一個區域被分配給小工具,但我的腳本UI從未出現在其中。在玩了一段時間後,我的腳本在一個完全不同的上下文中運行在iframe中,但只是再次嘗試看看我能做什麼,但我開始產生這樣的印象:一些與安全有關的警告阻止了它的構建/在iframe或gmail側欄小工具中顯示其界面,雖然也許我只是缺少一些重要的信息。

我的問題是有點大,我知道,但「應該」我會尋求其他的谷歌技術來構建的事情我心目中,還是我「大概」下一個站得住腳的軌道。我在尋找一些粗略的建築建議,我想可能還需要進一步探索。

+0

我正在做同樣的事情,但其他方式。將我的Chrome擴展中集成的Gmail中的JavaScript重用到Outlook中將是完美的。你是怎麼做你所解釋的?我的意思是你如何在一個Outlook插件中使用JavaScript? – pauel 2013-04-10 07:18:39

回答

2

使用Google Apps腳本,您無法向Gmail界面添加任何內容。簡而言之,它不會做你想做的事。

現在回到您的問題,如果側邊欄和上下文小工具是不夠你的。我看到您可以真正操作頁面的唯一解決方案是通過用戶瀏覽器上安裝的附加組件/擴展/腳本。

這種方法功能強大,可以根據需要更改頁面,但也有缺點。首先,更明顯的是,它在某種程度上取決於瀏覽器,並且本地安裝在瀏覽器上。這意味着如果用戶切換電腦或瀏覽器,他將需要重新安裝您的加載項。

此外,你有點依賴於gmail的「內部」結構。我說「有點」,因爲這取決於你如何編寫你的應用程序。但他們可能會立即做出改變並破壞您的應用程序,因爲gmail的html-css結構不是「已發佈的API」。

那麼,這是我的2美分。我希望它有幫助。

+0

它的確如此。而這條道路可能是可以接受的。我將開始閱讀/使用Chrome擴展程序支持,並向我的同事提出可能對客戶意味着什麼。謝謝。 – user1588752 2012-08-10 13:32:01

+0

P.S.這款Chrome擴展/打包應用技術看起來非常酷。 – user1588752 2012-08-10 15:49:20

+0

不錯,我很高興我的幫助。順便說一下,因爲你是一個新手,所以你應該在你覺得自己有一個好的答案時(不是說你應該接受我的答案,它只是一個提示)而接受答案。我們這裏有另一個有用的功能是投票(上下)。你應該使用它;) – 2012-08-10 16:10:55

0

使用JSF豐富的臉。這可以給你一個像看起來和發展的谷歌Gmail,這是非常容易和快速。

快樂編碼

+0

您是否有一個如何使用這些技術來解決問題的例子? – 2012-10-01 10:09:56

相關問題