TWI536240B - 用戶端應用程式與網頁整合 - Google Patents

用戶端應用程式與網頁整合 Download PDF

Info

Publication number
TWI536240B
TWI536240B TW100108786A TW100108786A TWI536240B TW I536240 B TWI536240 B TW I536240B TW 100108786 A TW100108786 A TW 100108786A TW 100108786 A TW100108786 A TW 100108786A TW I536240 B TWI536240 B TW I536240B
Authority
TW
Taiwan
Prior art keywords
application
browser
client application
function
functionality
Prior art date
Application number
TW100108786A
Other languages
English (en)
Other versions
TW201203082A (en
Inventor
司馬云瑞
陳宏
董穎濤
張繼超傑瑞德
Original Assignee
微軟技術授權有限責任公司
Priority date (The priority date is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the date listed.)
Filing date
Publication date
Application filed by 微軟技術授權有限責任公司 filed Critical 微軟技術授權有限責任公司
Publication of TW201203082A publication Critical patent/TW201203082A/zh
Application granted granted Critical
Publication of TWI536240B publication Critical patent/TWI536240B/zh

Links

Classifications

    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F9/00Arrangements for program control, e.g. control units
    • G06F9/06Arrangements for program control, e.g. control units using stored programs, i.e. using an internal store of processing equipment to receive or retain programs
    • G06F9/44Arrangements for executing specific programs
    • G06F9/451Execution arrangements for user interfaces
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F3/00Input arrangements for transferring data to be processed into a form capable of being handled by the computer; Output arrangements for transferring data from processing unit to output unit, e.g. interface arrangements
    • G06F3/01Input arrangements or combined input and output arrangements for interaction between user and computer
    • G06F3/048Interaction techniques based on graphical user interfaces [GUI]
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F3/00Input arrangements for transferring data to be processed into a form capable of being handled by the computer; Output arrangements for transferring data from processing unit to output unit, e.g. interface arrangements
    • G06F3/14Digital output to display device ; Cooperation and interconnection of the display device with other functional units

Landscapes

  • Engineering & Computer Science (AREA)
  • Theoretical Computer Science (AREA)
  • Software Systems (AREA)
  • General Engineering & Computer Science (AREA)
  • Human Computer Interaction (AREA)
  • Physics & Mathematics (AREA)
  • General Physics & Mathematics (AREA)
  • Information Transfer Between Computers (AREA)
  • User Interface Of Digital Computer (AREA)
  • Stored Programmes (AREA)
  • Pharmaceuticals Containing Other Organic And Inorganic Compounds (AREA)

Description

用戶端應用程式與網頁整合
本發明係關於用戶端應用程式與網頁整合。
用戶端應用程式與網頁整合為用於提供基於網頁瀏覽器之功能性與獨立應用程式功能性之間的互操作性之程序。在某些情況下,基於用戶端之應用程式可在不需要任何網路支援的情況下在電腦上執行,而基於瀏覽器之應用程式可在網頁瀏覽器內執行,從而緩解對將應用程式安裝於用戶端上的需要。然而,此舉可能導致重複努力來開發具有類似功能性之兩個單獨版本。此外,兩個不同應用程式可呈現不一致的使用者經驗,且可能無法同時利用可用於用戶端應用程式及網頁瀏覽器功能性之局部資源。此舉可能導致在用戶端應用程式與基於瀏覽器之應用程式之間切換的使用者之間的混淆及低效率。習知策略為分別開發兩個應用程式,但是此舉經常引發問題,因為習知策略不允許兩個版本之間的整合、互操作性及一致使用者經驗。
本發明可提供用戶端應用程式與網頁整合。提供此【發明內容】以用簡化形式介紹下文在【實施方式】中進一步描述之概念選擇。此【發明內容】並非意欲識別所主張標的之關鍵特徵或基本特徵。此【發明內容】亦並非意欲用以限制所主張標的之範疇。
本發明可提供應用程式整合。可在一用戶端電腦上執行一第一應用程式。該第一應用程式可連接至一第二應用程式,諸如一基於瀏覽器之應用程式。該第一應用程式可識別與該第二應用程式相關聯之至少一個功能性,且在該第一應用程式內顯示與該至少一個功能性相關聯之一使用者介面元素。
以上一般描述及以下詳細描述提供實例,且僅為解釋性的。因此,以上一般描述及以下詳細描述不應視為限制性的。另外,可提供除本文所闡述的彼等特徵或變化之外的特徵或變化。舉例而言,實施例可針對詳細描述中所描述之各種特徵組合及子組合。
以下詳細描述參閱隨附圖式。在可能的情況下,在圖式及以下描述中使用相同的元件符號來代表相同或類似元件。儘管可描述本發明之實施例,但是修改、調適及其他實施亦為可能。舉例而言,可對圖中所示之元件進行置換、添加或修改,且可藉由置換、重排序或將階段添加至所揭示的方法來修改本文所描述之方法。因此,以下詳細描述並不限制本發明。替代地,本發明之適當範疇係由隨附申請專利範圍來界定。
本發明可提供用戶端應用程式與網頁整合。與本發明之實施例相一致,本發明提供一種用於提供基於瀏覽器之應用程式與基於用戶端之應用程式之間的互操作性之設計。該設計可通知基於用戶端之應用程式在相關基於瀏覽器之應用程式上可用之動作,使得動作可動態地陳列於基於用戶端之應用程式之使用者介面(user interface;UI)上。使用者可經由基於用戶端之應用程式之UI採取動作,但是動作可對與基於瀏覽器之應用程式相關聯的資料生效。在引動所陳列的來自基於瀏覽器之應用程式的動作之前或之後,基於用戶端之應用程式亦可執行可用於基於用戶端之應用程式而非基於瀏覽器之應用程式的額外商業邏輯。
舉例而言,公司可開發兩個薪資應用程式。一個應用程式可包含基於用戶端之應用程式,且可由會計用以將薪金轉帳至員工的銀行帳戶。另一應用程式可開發為用於產生薪資報表且允許員工經由網頁瀏覽器核對該等薪資報表的基於瀏覽器之應用程式。兩個應用程式皆可正確操作,但是該等應用程式之整合可允許公司添加額外商業邏輯。舉例而言,此邏輯可允許在轉帳薪金之後立即產生薪資報表。隨後,可將薪資報表直接發送至員工。
第1圖為操作環境100之方塊圖。操作環境100可包含用戶端110、網路120及複數個網站伺服器130(A)-130(B)。舉例而言,網路120可包含專用網路(諸如企業內部網路)及/或公眾網路(諸如網際網路)。網站伺服器130(A)-130(B)可包含可操作以接收網頁請求(諸如,來自用戶端110的)且用作出請求的網頁來回應之電腦。網站伺服器130(A)-130(B)亦可操作以為基於瀏覽器之應用程式提供執行框架。舉例而言,用戶端110可經由網頁瀏覽器應用程式請求包含薪資報告的基於瀏覽器之應用程式之網頁。網站伺服器130(A)例如可用網頁及相關聯應用程式來回應於請求。隨後,用戶端110可請求與基於瀏覽器之應用程式相關聯之功能性,該請求操作係藉由網站伺服器130(A)經由與網頁瀏覽器應用程式之互動來執行。
第2A圖為示例性基於瀏覽器之應用程式200的方塊圖。基於瀏覽器之應用程式200可包含使用者介面(UI),該使用者介面包含選項條210、第一功能UI元素230及第二功能UI元素240。舉例而言,基於瀏覽器之應用程式200可包含財務應用程式,該財務應用程式包含員工資料及用於產生報表(與第一功能UI元素230相關聯)及/或通知員工已完成交易(與第二功能UI元素240相關聯)之功能。
第2B圖為用戶端應用程式250之方塊圖。用戶端應用程式250可包含使用者介面條265,使用者介面條265包含複數個UI動作元素260(A)-260(C)。舉例而言,用戶端應用程式250可包含會計應用程式,該會計應用程式包含員工資料及用於執行將資金轉帳至與員工相關聯之帳戶的功能。
第3圖為整合用戶端應用程式300之方塊圖。整合用戶端應用程式可包含使用者介面條265,使用者介面條265包含複數個UI動作元素260(A)-260(C)及複數個整合UI元素310(A)-310(B)。可基於由基於瀏覽器之應用程式200所陳列之功能將整合UI元素310(A)-310(B)併入使用者介面條265中。與本發明之實施例相一致,整合用戶端應用程式300可操作以存取、修改及/或同步化與基於瀏覽器之應用程式200相關聯之員工資料。
整合用戶端應用程式300可整合由基於瀏覽器之應用程式200所陳列之動作以達成一致使用者經驗,而並非呈現與現存UI分離之網頁。舉例而言,與第一功能UI元素230及/或第二功能UI元素240相關聯之功能可根據與整合用戶端應用程式300相關聯之視覺外觀顯示於使用者介面條265中。視覺外觀可包含配置細節,諸如色彩、本文式樣、位置、圖示及/或選項單佈局。
與本發明之實施例相一致,可依據使用者請求來初始化整合用戶端應用程式300,以開啟應用程式。整合用戶端應用程式300可根據與整合用戶端應用程式300之配置相關聯之統一資源定位器(uniform resource locator;URL)來載入網頁。網頁瀏覽器控制項可包含標準ActiveXTM控制項或例如用.Net框架公佈的管理控制項,且可允許整合用戶端應用程式300存取類似於習知網頁瀏覽器應用程式之基於瀏覽器之應用程式200。
在載入網頁之後,網頁可將其內容陳列於整合用戶端應用程式300。對於以上所描述之示例性財務應用程式,「產生報表」及「通知」功能及/或與基於瀏覽器之應用程式200相關聯之員工資料可陳列於基於用戶端之應用程式。陳列資料之其他實例可包含求助本文、主題索引及/或方法引動位址或名稱。
舉例而言,可藉由使基於瀏覽器之應用程式200引動以整合用戶端應用程式300實施之方法來陳列與基於瀏覽器之應用程式200相關聯的資料及功能。隨後,基於瀏覽器之應用程式200可將資料及/或功能參考交換至整合用戶端應用程式300。基於瀏覽器之應用程式200可負責將所有必要資訊建置為字串且將該字串傳遞至整合用戶端應用程式300。
該交換可組成若干區段。舉例而言,每一區段可包含標題(例如,「HelpId」)及/或值字串(例如,「<HelpID>」)。值字串可識別與區段相關聯之種類,該種類可用於在整合用戶端應用程式300內為與區段相關聯之使用者介面元素配置視覺外觀。在HelpID區段中,該值可包含一串資料。在另一實例(諸如,方法列表區段)中,該值可包含複數個方法名稱及方法位址對,該複數個方法名稱及方法位址對可將方法映射至其名稱且稍後允許其引動。基於瀏覽器之應用程式200藉由引動方法(諸如,包括在與基於瀏覽器之應用程式200相關聯之網頁中的javascript方法「window.external.Expose(segmentString)」)可將區段傳遞至整合用戶端應用程式300。
與本發明之實施例相一致,亦可藉由延伸HTML以添加用於陳列資料及功能之額外標籤來陳列彼等資料及功能。網頁可規定哪些資料及/或功能可陳列於HTML中,且整合用戶端應用程式300可剖析此等標籤。隨後,整合用戶端應用程式300可將相關聯動作陳列於其工具列、上下文選項單及/或由標籤(諸如UI條265)所規定之其他控制項。舉例而言,標籤之語法可包含:
在工具列標籤內,可將資料及功能(諸如GenerateReport)陳列於整合用戶端應用程式300。標籤亦可規定哪個控制項可表示其。在上述此實例中,在剖析HTML之後可將按鈕添加至整合用戶端應用程式300之UI條265。整合用戶端應用程式300之使用者可點擊UI條265中之「產生報表」按鈕(例如,整合UI元素310(A)),以使基於瀏覽器之應用程式200產生報表。另外,在引動基於瀏覽器之功能之前及/或之後,整合用戶端應用程式300可執行預引動及/或後引動功能性。
基於瀏覽器之應用程式200可執行由整合用戶端應用程式300所引動之動作或方法。隨後,基於瀏覽器之應用程式200亦可將完成的通知發送至包含成功/失敗結果及/或額外資料之整合用戶端應用程式300。
第4圖為闡述涉及與本發明之用於提供應用程式整合之實施例相一致的方法400之通用階段的流程圖。可使用如下文參照第5圖更詳細地描述之計算裝置500來實施方法400。下文將更詳細地描述實施方法400之階段的方式。方法400可自起始方塊405開始且進入階段410,其中計算裝置500可初始化用戶端應用程式且連接至基於瀏覽器之應用程式。舉例而言,用戶端110可自使用者接收初始化用戶端應用程式250之請求。隨後,用戶端應用程式250可根據與用戶端應用程式250之配置相關聯的網頁定位(諸如URL)連接至基於瀏覽器之應用程式200。
自階段410,方法400可前進至階段415,其中計算裝置500可決定基於瀏覽器之應用程式是否包含任何陳列資料及/或功能。舉例而言,基於瀏覽器之應用程式200可執行javascript方法,以將資料及/或功能陳列於用戶端應用程式250。與本發明之實施例相一致,用戶端應用程式250可剖析基於瀏覽器之應用程式200之網頁,以識別任何陳列資料及/或功能。
若在階段415處識別陳列元素,則方法400可前進至階段420,其中計算裝置500可將使用者介面元素添加至用戶端應用程式。舉例而言,用戶端應用程式250可添加與基於瀏覽器之應用程式200之陳列功能相關聯的複數個整合UI元素310(A)-310(B),從而產生整合用戶端應用程式300之使用者介面。整合用戶端應用程式300可將與用戶端應用程式250相關聯之視覺式樣應用於整合UI元素310(A)-310(B),以向整合用戶端應用程式300之使用者提供一致使用者經驗。
自階段420,或若在階段415中未識別到陳列資料及/或功能,則方法400可前進至階段425,其中計算裝置500可決定任何額外網頁及/或基於瀏覽器之應用程式是否與用戶端應用程式200相關聯。若如此,則方法400可返回至階段415,且決定其他網頁/應用程式中之每一者是否陳列待整合至整合用戶端應用程式300中之資料及/或功能。
對於陳列資料/功能而言,一旦不再需要對基於瀏覽器之網頁/應用程式存取,則方法400可前進至階段430,其中計算裝置500可接收執行陳列功能之請求。舉例而言,使用者可選擇整合UI元素310(A)以產生報表。
隨後,方法400可前進至階段435,其中計算裝置500可決定是否定義任何預執行功能。舉例而言,在執行與整合UI元素310(A)相關聯之陳列功能之前,整合用戶端應用程式300可定義諸如驗證在財務應用程式中所有擱置轉帳已完成之功能。
若定義預執行功能,則方法400可前進至階段440,其中計算裝置500可執行預執行功能。舉例而言,整合用戶端應用程式300可引動以上所描述之驗證功能。與本發明之實施例相一致,若預執行功能失效,則方法400可在階段470處結束,且向使用者顯示訊息,諸如錯誤及/或失敗通知。
在階段440處執行預執行功能之後,或若在階段435處決定未定義預執行功能,則方法400可前進至階段445,其中計算裝置500可請求基於瀏覽器之應用程式執行陳列功能。舉例而言,整合用戶端應用程式300可將引動陳列功能之請求發送至基於瀏覽器之應用程式200。與本發明之實施例相一致,作為接收執行陳列功能之請求的補充及/或替代,整合用戶端應用程式300亦可操作以接收由基於瀏覽器之應用程式所陳列之資料之改變。因此,整合用戶端應用程式300可在階段445處通知基於瀏覽器之應用程式200資料之改變,且基於瀏覽器之應用程式200可將改變的資料保存至與基於瀏覽器之應用程式200相關聯之資料儲存器。
自階段445,方法400可前進至階段450,其中計算裝置500可接收與陳列功能之引動相關聯之結果。舉例而言,基於瀏覽器之應用程式200可將與執行功能相關聯之成功/失敗訊息及/或額外資料發送至整合用戶端應用程式300。
自階段450,方法400可前進至階段455,其中計算裝置500可向使用者顯示與陳列功能之引動相關聯之通知。舉例而言,整合用戶端應用程式300可顯示圖示、本文顯示、對話框及/或其他使用者介面元素,該等元素指示陳列功能之執行已完成,且整合用戶端應用程式300可指示通知中所提供動作之成功或失敗。
隨後,方法400可前進至階段460,其中計算裝置500可決定是否定義任何後執行功能。舉例而言,在執行與整合UI元素310(A)相關聯之陳列功能之後,整合用戶端應用程式300可定義諸如建立記錄入口之功能。
若定義後執行功能,則方法400可前進至階段465,其中計算裝置500可執行後執行功能。舉例而言,整合用戶端應用程式300可引動以上所描述之記錄功能。在階段465處執行後執行功能之後,或若在階段460處決定未定義後執行功能,則方法400可在階段470處結束。
與本發明相一致之一實施例可包含用於提供應用程式整合之系統。該系統可包含記憶體儲存器及耦接至記憶體儲存器之處理單元。處理單元可操作以執行第一應用程式、自第一應用程式連接至第二應用程式、識別與第二應用程式相關聯之至少一個功能性,及在第一應用程式內顯示與至少一個功能性相關聯之使用者介面元素。處理單元可進一步操作以識別與至少一個功能性相關聯之動作種類,及將視覺外觀指派給與動作種類相關聯之使用者介面元素。舉例而言,若陳列資料包含求助主題,則處理單元可將求助主題指派給在求助選項單內之位置,及/或將問題標記圖示指派給可操作以存取求助主題的UI元素。
與本發明相一致之另一實施例可包含用於提供應用程式整合之系統。該系統可包含記憶體儲存器及耦接至記憶體儲存器之處理單元。處理單元可操作以初始化第一應用程式及決定至少一個第二應用程式是否包含陳列元素。若如此,則處理單元可操作以在第一應用程式之使用者介面內顯示至少一個第二應用程式之陳列元素可用於該第一應用程式之使用者的指示。
與本發明相一致之又一實施例可包含用於提供應用程式整合之系統。該系統可包含記憶體儲存器及耦接至該記憶體儲存器之處理單元。處理單元可操作以自基於用戶端之應用程式連接至至少一個基於瀏覽器之應用程式、識別與至少一個基於瀏覽器之應用程式相關聯的至少一個陳列功能、在與至少一個陳列功能相關聯之基於用戶端之應用程式內顯示使用者介面元素、接收執行至少一個陳列功能之請求,及決定基於用戶端之應用程式是否包含與至少一個陳列功能相關聯之預執行功能。若基於用戶端之應用程式包含預執行功能,則處理單元可操作以執行預執行功能。隨後,處理單元可將執行至少一個陳列功能之請求發送至至少一個基於瀏覽器之應用程式;自至少一個基於瀏覽器之應用程式接收一結果,該至少一個基於瀏覽器之應用程式與該至少一個基於瀏覽器之應用程式執行至少一個陳列功能之請求相關聯;向基於用戶端之應用程式之使用者顯示與接收結果相關聯之通知;及決定基於用戶端之應用程式是否包含與至少一個陳列功能相關聯之後執行功能。若如此,則處理單元可操作以執行後執行功能。
第5圖為包括計算裝置500之系統的方塊圖。與本發明之實施例相一致,前述記憶體儲存器及處理單元可實施於計算裝置(諸如第5圖之計算裝置500)中。可使用硬體、軟體或韌體之任何適合組合來實施記憶體儲存器及處理單元。舉例而言,可用計算裝置500或任何其他計算裝置518與計算裝置500結合來實施記憶體儲存器及處理單元。與本發明之實施例相一致,前述系統、裝置及處理器為實例,且其他系統、裝置及處理器可包含前述記憶體儲存器及處理單元。
參閱第5圖,與本發明之實施例相一致之系統可包括計算裝置,諸如計算裝置500。在基本配置中,計算裝置500可包括至少一個處理單元502及系統記憶體504。取決於計算裝置之配置及類型,系統記憶體504可包含(但不限於)揮發性(例如,隨機存取記憶體(random access memory;RAM))、非揮發性(例如,唯讀記憶體(read-only memory;ROM))、快閃記憶體或任何組合。系統記憶體504可包括作業系統505、一或多個程式模組506,且可包括用戶端應用程式507。舉例而言,作業系統505可適合於控制計算裝置500之操作。在一個實施例中,程式模組506可包括網頁瀏覽器應用程式520。此外,可結合圖形程式館、其他作業系統或任何其他應用程式來實踐本發明之實施例,且本發明之實施例不限於任何特定應用或系統。此基本配置係藉由在虛線508內之彼等組件圖示於第5圖中。
計算裝置500可具有額外特徵或功能性。舉例而言,計算裝置500亦可包括額外資料儲存裝置(可移除及/或非可移除),例如磁碟、光碟或磁帶。此額外儲存器係藉由可移除儲存器509及非可移除儲存器510圖示於第5圖中。電腦儲存媒體可包括以儲存資訊之任何方法或技術(諸如電腦可讀取指令、資料結構、程式模組或其他資料)所實施之揮發性及非揮發性、可移除及非可移除媒體。系統記憶體504、可移除儲存器509及非可移除儲存器510均為電腦儲存媒體實例(亦即,記憶體儲存器)。電腦儲存媒體可包含(但不限於)RAM、ROM、電子可抹除可程式化唯讀記憶體(electrically erasable programmable read-only memory;EEPROM)、快閃記憶體或其他記憶體技術、CD-ROM、數位化多功能光碟(digital versatile disk;DVD)或其他光學儲存器、磁帶盒、磁帶、磁碟儲存器或其他磁性儲存裝置,或可用以儲存資訊且可由計算裝置500存取之任何其他媒體。任何此類電腦儲存媒體可為裝置500之一部分,且可包含非暫態儲存媒體。計算裝置500亦可具有輸入裝置512,諸如鍵盤、滑鼠、筆、聲音輸入裝置、觸控式輸入裝置等。計算裝置500亦可包括輸出裝置514,諸如顯示器、揚聲器、印表機等。前述裝置為實例,且可使用其他裝置。
計算裝置500亦可含有可允許裝置500(諸如在分散式計算環境中經由網路(例如內部網路或網際網路))與其他計算裝置518通訊之通訊連接516。通訊連接516為通訊媒體之一個實例。通常可藉由電腦可讀取指令、資料結構、程式模組或調制資料訊號(諸如載波或其他傳送機構)中之其他資料來實施通訊媒體,且該通訊媒體包括任何資訊遞送媒體。術語「調制資料訊號」可描述具有一或多個特性集或以編碼訊號中之資訊之方式改變的訊號。舉例而言(但並非限制),通訊媒體可包括有線媒體(諸如有線網路或直接有線連接)及無線媒體(諸如,聲學、射頻(radio frequency;RF)、紅外及其他無線媒體)。本文中使用之術語電腦可讀取媒體可包括儲存媒體及通訊媒體。
如上所述,許多程式模組及資料檔案(包括作業系統505)可儲存於系統記憶體504中。當在處理單元502上執行時,程式模組506(例如,網頁瀏覽器應用程式520)可執行包括例如以上所描述之方法400之階段中之一個或多者的程序。前述程序為實例,且處理單元502可執行其他程序。可根據本發明之實施例使用之其他程式模組可包括電子郵件及聯絡應用程式、文字處理應用程式、試算表應用程式、資料庫應用程式、幻燈片演示應用程式、製圖或電腦輔助應用程式等。
大體而言,與本發明之實施例相一致,程式模組可包括常式、程式、組件、資料結構及可執行特定任務或可實施特定抽象資料類型之其他類型之結構。此外,可用其他電腦系統配置(包括手持式裝置、多處理器系統、基於微處理器的或可程式化消費者電子器具、小型電腦、主機電腦及其類似物)來實踐本發明之實施例。本發明之實施例亦可實踐於分散式計算環境中,其中藉由遠端處理裝置來執行任務,該等遠端處理裝置係經由通訊網路而鏈接。在分散式計算環境中,程式模組可位於本端及遠端記憶體儲存裝置中。
此外,本發明之實施例可實踐於包含離散電子元件、含有邏輯閘之封裝式或整合式電子晶片的電路中、實踐於利用微處理器之電路中或實踐於含有電子元件或微處理器之單晶片上。亦可使用能夠執行例如「及」、「或」以及「非」之邏輯運算的其他技術(包括但不限於機械、光學、射流及量子技術)來實踐本發明之實施例。另外,可在通用電腦內或在任何其他電路或系統中實踐本發明之實施例。
舉例而言,本發明之實施例可實施為電腦程序(方法)、計算系統或實施為諸如電腦程式產品或電腦可讀取媒體之製品。電腦程式產品可為由電腦系統可讀取及編碼用於執行電腦程序之指令之電腦程式的電腦儲存媒體。電腦程式產品亦可為在載波上由計算系統可讀取及編碼用於執行電腦程序之指令之電腦程式的傳播訊號。因此,本發明可實施於硬體中及/或實施於軟體(包括韌體、常駐軟體、微代碼等)中。換言之,本發明之實施例可採取電腦可用或電腦可讀取儲存媒體上之電腦程式產品的形式,該電腦可用或電腦可讀取儲存媒體具有實施於該媒體中以供指令執行系統使用或與指令執行系統一起使用之電腦可用或電腦可讀取程式碼。電腦可用或電腦可讀取媒體可為可含有、儲存、傳達、傳播或輸送供指令執行系統、設備或裝置使用或與指令執行系統、設備或裝置一起使用之程式的任何媒體。
電腦可用或電腦可讀取媒體可為例如(但不限於)電子、磁性、光學、電磁、紅外或半導體系統、設備、裝置或傳播媒體。作為更特定電腦可讀取媒體實例(非詳盡列表),電腦可讀取媒體可包括以下類型:具有一或多個導線之電氣連接、可攜式電腦磁片、隨機存取記憶體(RAM)、唯讀記憶體(ROM)、可抹除可程式化唯讀記憶體(erasable programmable read-only memory;EPROM)或快閃記憶體、光纖及可攜式壓縮光碟-唯讀記憶體(compact disc read-only memory;CD-ROM)。應注意,電腦可用或電腦可讀取媒體甚至可為紙或將程式列印於其上之另一適合媒體,因為可經由例如光學掃描紙或其他媒體,隨後對其編譯、解譯或者另外以適合方式處理(若必要),且隨後將其儲存於電腦記憶體中而以電子方式擷取程式。
舉例而言,以上參閱根據本發明之實施例之方法、系統及電腦程式產品的方塊圖及/或操作圖示來描述本發明之實施例。方塊中所述之功能/動作可如任何流程圖中所示無次序地發生。舉例而言,連續圖示之兩個方塊事實上可大體上同時執行,或該等方塊有時可按相反次序執行,此取決於所涉及的功能性/動作。
儘管已描述本發明之某些實施例,但是其他實施例亦可存在。此外,儘管已將本發明之實施例描述為與儲存於記憶體及其他儲存媒體中之資料相關聯,但是資料亦可儲存於其他類型之電腦可讀取媒體上或自其他類型之電腦可讀取媒體讀取,該等其他類型之電腦可讀取媒體諸如次級儲存裝置(如硬碟、軟碟或CD-ROM)、來自網際網路之載波或其他形式之RAM或ROM。另外,在不脫離本發明的情況下,可以任何方式(包括藉由重排序階段及/或插入或刪除階段)來修改所揭示方法之階段。
授予本文所包括的所有權利(包括法律版權),且所有權利均為申請者之產權。申請人保持且保留本文所包括的所有法律權利,且允許僅結合授權專利之重現而非其他目的來重現該材料。
儘管本說明書包括實例,但是本發明之範疇係由以下申請專利範圍來指示。此外,儘管已用特定於結構特徵及/或方法論行為之語言來描述本說明書,但是申請專利範圍不限於以上所描述之特徵或動作。實情為,將以上所描述之特定特徵及動作揭示為本發明之實施例的實例。
100...操作環境
110...用戶端
120...網路
130(A)...網站伺服器
130(B)...網站伺服器
200...基於瀏覽器之應用
210...選項條程式
240...第二功能UI元素
230...第一功能UI元素
260(A)...UI動作元素
250...用戶端應用程式
260(C)...UI動作元素
260(B)...UI動作元素
300...整合用戶端應用
265...使用者介面條/UI程式條
310(B)...整合UI元素
310(A)...整合UI元素
410...階段
400...方法
420...階段
415...階段
430...階段
425...階段
440...階段
435...階段
450...階段
445...階段
460...階段
455...階段
470...階段
465...階段
502...處理單元
500...計算裝置
505...作業系統
504...系統記憶體
507...用戶端應用程式
506...程式模組
509...可移除儲存器
508...虛線
512...輸入裝置
510...非可移除儲存器
516...通訊連接
514...輸出裝置
520...網頁瀏覽器應用程式
518...其他計算裝置
併入且構成本揭示案之部分的隨附圖式圖示了本發明之各種實施例。在圖式中:
第1圖為操作環境之方塊圖;
第2A圖-第2B圖為示例性應用程式之方塊圖;
第3圖為整合用戶端應用程式之方塊圖;
第4圖為用於提供應用程式整合之方法的流程圖;以及
第5圖為包括計算裝置之系統的方塊圖。
100...操作環境
110...用戶端
120...網路
130(A)...網站伺服器
130(B)...網站伺服器

Claims (20)

  1. 一種用於提供應用程式整合之方法,該方法包含以下步驟:執行一用戶端應用程式;經由該用戶端應用程式請求一網頁,該網頁包含一基於瀏覽器之應用程式;決定該基於瀏覽器之應用程式是否包含陳列功能性;識別由該基於瀏覽器之應用程式陳列的一第一功能性;併入一經整合使用者介面元素,該經整合使用者介面元素將該第一功能性整合入該用戶端應用程式,以提供一一致的使用者經驗;在該用戶端應用程式內顯示與該第一功能性相關聯之該經整合使用者介面元素;接收要經由該經整合使用者介面元素執行該第一功能性的一請求;決定該用戶端應用程式是否包含相關聯於該第一功能性的一預執行功能;回應於決定該用戶端應用程式包含相關聯於該第一功能的該預執行功能,而在請求該基於瀏覽器之應用程式執行該第一功能性之前執行該預執行功能;在該預執行功能完成時,請求該基於瀏覽器之應用程式執行該第一功能性;以及 在該預執行功能失效時,提供一錯誤通知而不請求該基於瀏覽器之應用程式執行該第一功能性。
  2. 如請求項1所述之方法,其中功能性包含標籤以指明哪些功能性被陳列。
  3. 如請求項2所述之方法,其中決定該基於瀏覽器之應用程式是否包含任何陳列功能性之步驟,進一步包含以下步驟:該用戶端應用程式藉由對於該等標籤剖析該網頁,以決定該等功能性是否被陳列。
  4. 如請求項1所述之方法,其進一步包含以下步驟:由該用戶端應用程式之一使用者擷取該顯示的經整合使用者介面元素之一選擇;以及引動與該基於瀏覽器之應用程式相關聯之該第一功能性。
  5. 如請求項4所述之方法,其進一步包含以下步驟:決定一第二功能性是否由該用戶端應用程式提供及是否與引動該第一功能性之步驟相關聯;以及回應於決定該第二功能性由該用戶端應用程式提供及與引動該第一功能性之步驟相關聯的步驟,由該用戶端應用程式來引動該第二功能性。
  6. 如請求項4所述之方法,其進一步包含以下步驟:由該用戶端應用程式自該基於瀏覽器之應用程式接收一結果通知。
  7. 如請求項6所述之方法,其進一步包含以下步驟:向該用戶端應用程式之該使用者顯示該結果通知。
  8. 如請求項1所述之方法,其中在該用戶端應用程式內顯示與該第一功能性相關聯之該經整合使用者介面元素之步驟包含以下步驟:識別與該第一功能性相關聯之一動作種類;以及將一視覺外觀指派給與該動作種類相關聯之該經整合使用者介面元素。
  9. 如請求項6所述之方法,其中指派給該經整合使用者介面元素之該視覺外觀包含以下至少一者:一色彩、一本文式樣、一位置、一圖示及一選項單佈局。
  10. 一種用於提供應用程式整合之系統,該系統包含:一記憶體儲存器;以及一處理單元,該處理單元耦接至該記憶體儲存器,其中該處理單元可操作以:初始化一用戶端應用程式;經由該用戶端應用程式請求一網頁,該網頁包含一 基於瀏覽器之應用程式;決定該基於瀏覽器之應用程式是否包含一陳列元素;回應於決定該基於瀏覽器之應用程式包含該陳列元素之步驟,整合與該陳列元素相關聯之一使用者介面元素以及該用戶端應用程式;將與該用戶端應用程式相關聯之一視覺式樣應用至該經整合使用者介面元素,以對該用戶端應用程式的一使用者提供一一致的使用者經驗;在該用戶端應用程式內顯示與該陳列元素相關聯的該經整合使用者介面元素;接收要經由該經整合使用者介面元素執行該陳列元素的一請求;決定該用戶端應用程式是否包含相關聯於該陳列元素的一預執行功能;回應於決定該用戶端應用程式包含相關聯於該第一功能的該預執行功能,而在請求該基於瀏覽器之應用程式執行該陳列元素之前執行該預執行功能;在該預執行功能完成時,請求該基於瀏覽器之應用程式執行該陳列元素;以及在該預執行功能失效時,提供一錯誤通知而不請求該基於瀏覽器之應用程式執行該陳列元素。
  11. 如請求項10所述之系統,其中該陳列元素包含一資料 元素。
  12. 如請求項11所述之系統,其進一步包含:自該用戶端應用程式之該使用者接收一動作請求;決定該動作請求是否包含該資料元素之一改變;以及回應於決定該動作請求包含該資料元素之該改變而通知該基於瀏覽器之應用程式該資料元素之該改變。
  13. 如請求項11所述之系統,其中該資料元素包含一求助主題。
  14. 如請求項13所述之系統,其中在該用戶端應用程式之該使用者介面內顯示該基於瀏覽器之應用程式之該陳列元素可用於該用戶端應用程式之一使用者的一指示,包含將該求助主題添加至與該用戶端應用程式相關聯之一求助選項單。
  15. 如請求項10所述之系統,其中該陳列元素包含一功能。
  16. 如請求項15所述之系統,其中在該用戶端應用程式之一使用者介面內顯示該基於瀏覽器之應用程式之該陳列元素可用於該用戶端應用程式之該使用者的一指示,包含將至少一動作元素添加至與該用戶端應用程式相關聯之該使用者介面。
  17. 如請求項16所述之系統,其進一步包含:將該至少一動作元素之一選擇接收為自該用戶端應用程式之該使用者之一輸入;以及在該基於瀏覽器之應用程式上引動該功能。
  18. 如請求項17所述之系統,其進一步包含:回應於引動該功能而自該基於瀏覽器之應用程式接收一結果通知;以及向該用戶端應用程式之該使用者顯示與自該基於瀏覽器之應用程式接收之該結果通知相關聯的一訊息。
  19. 如請求項10所述之系統,其進一步包含:識別複數個陳列元素,其中該等陳列元素中之每一者與複數個基於瀏覽器之應用程式中之至少一者相關聯;以及在該用戶端應用程式之該使用者介面內建立一元素,該用戶端應用程式與該等陳列元素中之每一者相關聯。
  20. 一種儲存一組指令之電腦可讀取儲存裝置,該組指令在被執行時執行一用於提供應用程式整合之方法,由該組指令執行之該方法包含以下步驟:經由該用戶端應用程式請求一網頁,該網頁包含一基於瀏覽器之應用程式, 決定該基於瀏覽器之應用程式是否包含至少一陳列元素,識別與該基於瀏覽器之應用程式相關聯之該至少一陳列功能,整合與該至少一陳列功能相關聯之一使用者介面元素至該用戶端應用程式,在該用戶端應用程式內顯示該使用者介面元素,其中該使用者介面元素與該至少一陳列功能相關聯,從該用戶端應用程式之一使用者接收要經由該使用者介面元素執行該至少一陳列功能之一請求,決定該用戶端應用程式是否包含與該至少一陳列功能相關聯之一預執行功能,回應於決定該用戶端應用程式包含與該至少一陳列功能相關聯之該預執行功能而執行該預執行功能,將執行該至少一陳列功能之一請求發送至該基於瀏覽器之應用程式,在請求該基於瀏覽器之應用程式執行該至少一陳列功能之前執行該預執行功能:在該預執行功能完成時,請求該基於瀏覽器之應用程式執行該至少一陳列功能;以及在該預執行功能失效時,提供一錯誤通知而不請求該基於瀏覽器之應用程式執行該至少一陳列功能;自該基於瀏覽器之應用程式接收一結果,該結果與要由該基於瀏覽器之應用程式執行該至少一陳列功能之該請 求相關聯,向該用戶端應用程式之該使用者顯示與所接收的該結果相關聯之一通知,決定該用戶端應用程式是否包含與該至少一陳列功能相關聯之一後執行功能,以及回應於決定該用戶端應用程式包含與該至少一陳列功能相關聯之一後執行功能而執行該後執行功能。
TW100108786A 2010-04-28 2011-03-15 用戶端應用程式與網頁整合 TWI536240B (zh)

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
US12/768,957 US20110271184A1 (en) 2010-04-28 2010-04-28 Client application and web page integration

Publications (2)

Publication Number Publication Date
TW201203082A TW201203082A (en) 2012-01-16
TWI536240B true TWI536240B (zh) 2016-06-01

Family

ID=44859295

Family Applications (1)

Application Number Title Priority Date Filing Date
TW100108786A TWI536240B (zh) 2010-04-28 2011-03-15 用戶端應用程式與網頁整合

Country Status (17)

Country Link
US (1) US20110271184A1 (zh)
EP (1) EP2564314A4 (zh)
JP (1) JP2013528859A (zh)
KR (1) KR20130105287A (zh)
CN (2) CN102884507A (zh)
AR (1) AR081287A1 (zh)
AU (1) AU2011248878B2 (zh)
BR (1) BR112012027253A2 (zh)
CA (1) CA2795201A1 (zh)
CL (1) CL2012002955A1 (zh)
CO (1) CO6660442A2 (zh)
IL (1) IL222258A0 (zh)
MX (1) MX2012012419A (zh)
RU (1) RU2586850C2 (zh)
SG (1) SG184805A1 (zh)
TW (1) TWI536240B (zh)
WO (1) WO2011139490A2 (zh)

Families Citing this family (12)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US8819155B2 (en) * 2011-12-16 2014-08-26 Business Objects Software Limited System and method for performing centralized common tasks for a set of functions
JP6276526B2 (ja) * 2013-07-04 2018-02-07 株式会社ブロードリーフ 送受信装置、送受信システム、送受信方法及びプログラム
US9792354B2 (en) * 2013-09-30 2017-10-17 Microsoft Technology Licensing, Llc Context aware user interface parts
US20150234930A1 (en) * 2014-02-19 2015-08-20 Google Inc. Methods and systems for providing functional extensions with a landing page of a creative
TW201610845A (zh) * 2014-09-03 2016-03-16 Stone & Resource Industry R&D Ct 子母應用程式整合方法及其系統
EP3029565A1 (en) * 2014-12-01 2016-06-08 Google, Inc. A method to fetch functionality across applications
US10078740B2 (en) * 2014-12-01 2018-09-18 Google Llc Method to fetch functionality across applications
US9756005B2 (en) * 2015-11-04 2017-09-05 Google Inc. Notification bundles for affinities between notification data
US20170322704A1 (en) * 2016-05-03 2017-11-09 Google Inc. Composition of a user interface through data binding
JP6831759B2 (ja) * 2017-06-29 2021-02-17 株式会社オービックビジネスコンサルタント 給与明細送信装置、給与明細送信方法、及びプログラム
US10621262B2 (en) * 2017-10-30 2020-04-14 RevContent, LLC Configurable feed for display with a web page
US11036358B2 (en) 2017-10-30 2021-06-15 Eternal Strategies, LLC Configurable feed for display with a web page

Family Cites Families (31)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US6434598B1 (en) * 1996-07-01 2002-08-13 Sun Microsystems, Inc. Object-oriented system, method and article of manufacture for a client-server graphical user interface (#9) framework in an interprise computing framework system
US6460058B2 (en) * 1996-12-06 2002-10-01 Microsoft Corporation Object-oriented framework for hyperlink navigation
US6061695A (en) * 1996-12-06 2000-05-09 Microsoft Corporation Operating system shell having a windowing graphical user interface with a desktop displayed as a hypertext multimedia document
US6266681B1 (en) * 1997-04-08 2001-07-24 Network Commerce Inc. Method and system for inserting code to conditionally incorporate a user interface component in an HTML document
US5964836A (en) * 1997-09-11 1999-10-12 International Business Machines Corporation Apparatus, methods and computer program products for managing web-page-embedded sessions with a host-based application
US6574661B1 (en) * 1997-09-26 2003-06-03 Mci Communications Corporation Integrated proxy interface for web based telecommunication toll-free network management using a network manager for downloading a call routing tree to client
US6182277B1 (en) * 1998-04-15 2001-01-30 Oracle Corporation Methods and apparatus for declarative programming techniques in an object oriented environment
US6675371B1 (en) * 1999-04-30 2004-01-06 Hewlett-Packard Development Company, L.P. Java and native application window integration
US20010027439A1 (en) * 1999-07-16 2001-10-04 Holtzman Henry N. Method and system for computerized form completion
US6865593B1 (en) * 2000-04-12 2005-03-08 Webcollege, Inc. Dynamic integration of web sites
CN1333500A (zh) * 2000-07-13 2002-01-30 国际商业机器公司 在嵌入式环境中直观地集成应用程序的系统和方法
US20020078255A1 (en) * 2000-10-17 2002-06-20 Shankar Narayan Pluggable instantiable distributed objects
US7263663B2 (en) * 2001-03-02 2007-08-28 Oracle International Corporation Customization of user interface presentation in an internet application user interface
US20030050969A1 (en) * 2001-03-20 2003-03-13 Sant Philip Anthony Information integration system
US7406664B1 (en) * 2001-06-15 2008-07-29 Microsoft Corporation System for integrating HTML Web site views into application file dialogs
US7581231B2 (en) * 2001-07-10 2009-08-25 Microsoft Corporation Computing system and method for allowing plurality of applications written in different programming languages to communicate and request resources or services via a common language runtime layer
US7831655B2 (en) * 2001-10-18 2010-11-09 Bea Systems, Inc. System and method for implementing a service adapter
US7114148B2 (en) * 2002-09-30 2006-09-26 Microsoft Corporation Runtime services for network software platform
US20040225960A1 (en) * 2003-05-09 2004-11-11 Microsoft Corporation System for hosting graphical layout/presentation objects
US20040260806A1 (en) * 2003-06-20 2004-12-23 Eric Martin System supporting communication between a web enabled application and another application
US7493592B2 (en) * 2003-10-24 2009-02-17 Microsoft Corporation Programming interface for a computer platform
WO2005101179A1 (en) * 2004-04-09 2005-10-27 Siemens Medical Solutions Health Services Corporation A system for managing operating sessions of an executable application
JP4958769B2 (ja) * 2004-04-29 2012-06-20 ノキア コーポレイション 遠隔電子取引
US20060129931A1 (en) * 2004-12-10 2006-06-15 Microsoft Corporation Integrated client help viewer for internet-based and local help content
US7890452B2 (en) * 2005-07-13 2011-02-15 Sap Ag Methods for enterprise-level data and process access and presentation
US7802230B1 (en) * 2005-09-19 2010-09-21 Sap Ag Heterogeneous software integration systems and methods
WO2008002274A1 (en) * 2006-06-27 2008-01-03 Inventys Pte Ltd Method and system for client-side user interface enhancement to enable application integration and portalisation
US20080134077A1 (en) * 2006-12-05 2008-06-05 Sap Ag Chameleon graphic user interface
CN1971511A (zh) * 2006-12-20 2007-05-30 北京中星微电子有限公司 一种软件集成的方法及装置
JP2009134684A (ja) * 2007-10-31 2009-06-18 Askul Corp コンピュータ実行可能なネットワーク購買プログラム
CN101539854B (zh) * 2008-01-24 2012-10-31 西安电子科技大学 一种异构软件界面集成的实现方法

Also Published As

Publication number Publication date
EP2564314A2 (en) 2013-03-06
CN105138313A (zh) 2015-12-09
CL2012002955A1 (es) 2013-02-22
IL222258A0 (en) 2012-12-31
AU2011248878A1 (en) 2012-09-27
CA2795201A1 (en) 2011-11-10
RU2586850C2 (ru) 2016-06-10
JP2013528859A (ja) 2013-07-11
SG184805A1 (en) 2012-11-29
AU2011248878B2 (en) 2014-05-01
RU2012145856A (ru) 2014-05-10
EP2564314A4 (en) 2014-02-19
WO2011139490A2 (en) 2011-11-10
WO2011139490A3 (en) 2012-01-19
CO6660442A2 (es) 2013-04-30
US20110271184A1 (en) 2011-11-03
MX2012012419A (es) 2012-11-29
CN102884507A (zh) 2013-01-16
BR112012027253A2 (pt) 2016-07-26
KR20130105287A (ko) 2013-09-25
AR081287A1 (es) 2012-08-01
TW201203082A (en) 2012-01-16

Similar Documents

Publication Publication Date Title
TWI536240B (zh) 用戶端應用程式與網頁整合
US11561846B2 (en) API notebook tool
US11366676B2 (en) Embedded user assistance for software applications
JP5911594B2 (ja) アプリケーションのローカリゼイションにおける翻訳支援の提供
US8543913B2 (en) Identifying and using textual widgets
CN100578495C (zh) 以透明方式公开计算机生成文档中嵌套数据的方法和系统
US10033600B2 (en) Client application integration for workflows
US20090100321A1 (en) Universal contextual actions menu across windows applications
US8983935B2 (en) Methods for utilizing a javascript emulator in a web content proxy server and devices thereof
US20150012815A1 (en) Optimization schemes for controlling user interfaces through gesture or touch
US8074167B2 (en) Cross domain presence of web user interface and logic
US8645916B2 (en) Crunching dynamically generated script files
CN102016833A (zh) 使用潜在传送表面来修改文档的技术
US10223698B2 (en) Integrating a web-based CRM system with a PIM client application
US20110022943A1 (en) Document object model (dom) application framework
US10417317B2 (en) Web page profiler
TW201409273A (zh) 網頁訪問請求的響應方法和裝置
US10169478B2 (en) Optimize data exchange for MVC-based web applications
KR101730070B1 (ko) SaaS 환경에서의 웹페이지 서비스 방법, 이를 위한 컴퓨터 프로그램, 그 기록매체
Maulana et al. IMPLEMENTATION OF NETWORK WEBSITE TECHNOLOGY IN COMPANY BRANDING PROFILE
KR20220122246A (ko) SaaS환경 홈페이지 제작 시스템
CN118535156A (zh) 一种动画效果配置方法、装置、设备及存储介质
Janson et al. Servlets

Legal Events

Date Code Title Description
MM4A Annulment or lapse of patent due to non-payment of fees