一種網(wǎng)頁(yè)瀏覽器及通過(guò)網(wǎng)頁(yè)瀏覽器調(diào)用本地應(yīng)用程序的方法
【專利摘要】本申請(qǐng)公開(kāi)了一種通過(guò)網(wǎng)頁(yè)瀏覽器調(diào)用本地應(yīng)用程序的方法,包括:A、網(wǎng)頁(yè)瀏覽器根據(jù)用戶觸摸或者點(diǎn)擊的操作,通過(guò)網(wǎng)頁(yè)加載本地應(yīng)用程序的配置信息和參數(shù),并將所述配置信息和參數(shù)發(fā)送給封裝在網(wǎng)頁(yè)瀏覽器內(nèi)的應(yīng)用程序包裝器;B、應(yīng)用程序包裝器根據(jù)所述配置信息和參數(shù)運(yùn)行相應(yīng)的本地應(yīng)用程序,并且將運(yùn)行結(jié)果展示在網(wǎng)頁(yè)界面上。本申請(qǐng)還公開(kāi)了一種網(wǎng)頁(yè)瀏覽器。
【專利說(shuō)明】一種網(wǎng)頁(yè)瀏覽器及通過(guò)網(wǎng)頁(yè)瀏覽器調(diào)用本地應(yīng)用程序的方法
【技術(shù)領(lǐng)域】
[0001]本申請(qǐng)涉及計(jì)算機(jī)【技術(shù)領(lǐng)域】,尤其涉及一種網(wǎng)頁(yè)瀏覽器及通過(guò)網(wǎng)頁(yè)瀏覽器調(diào)用本地應(yīng)用程序的方法。
【背景技術(shù)】
[0002]用戶在通過(guò)網(wǎng)頁(yè)瀏覽器顯示windows桌面應(yīng)用程序時(shí),不能在瀏覽器網(wǎng)頁(yè)中直接運(yùn)行應(yīng)用程序,而是需要首先下載該應(yīng)用程序并進(jìn)行安裝之后,才能運(yùn)行該應(yīng)用程序;另一方面,即使用戶設(shè)備本地已經(jīng)安裝了用戶需要的應(yīng)用程序,用戶在瀏覽網(wǎng)站需要運(yùn)行本地的應(yīng)用程序時(shí),也只能在其他界面運(yùn)行應(yīng)用程序,而無(wú)法嵌入在網(wǎng)頁(yè)中直接運(yùn)行顯示。
[0003]因此,現(xiàn)有技術(shù)中存在以下缺點(diǎn):
[0004]1、網(wǎng)頁(yè)中一般需要使用專門的插件調(diào)用應(yīng)用程序,用戶交互性差,降低了用戶體驗(yàn);
[0005]2、網(wǎng)頁(yè)中調(diào)用本地應(yīng)用程序時(shí),不能對(duì)程序窗口進(jìn)行封裝管理,因此無(wú)法在網(wǎng)頁(yè)中直接運(yùn)行。
【發(fā)明內(nèi)容】
[0006]本申請(qǐng)?zhí)峁┝艘环N網(wǎng)頁(yè)瀏覽器及通過(guò)網(wǎng)頁(yè)瀏覽器調(diào)用本地應(yīng)用程序的方法,可以在網(wǎng)頁(yè)中直接運(yùn)行本地應(yīng)用程序。
[0007]本申請(qǐng)實(shí)施例提供了一種通過(guò)網(wǎng)頁(yè)瀏覽器調(diào)用本地應(yīng)用程序的方法,包括:
[0008]A、網(wǎng)頁(yè)瀏覽器根據(jù)用戶觸摸或者點(diǎn)擊的操作,通過(guò)網(wǎng)頁(yè)加載本地應(yīng)用程序的配置信息和參數(shù),并將所述配置信息和參數(shù)發(fā)送給封裝在網(wǎng)頁(yè)瀏覽器內(nèi)的應(yīng)用程序包裝器;
[0009]B、應(yīng)用程序包裝器根據(jù)所述配置信息和參數(shù)運(yùn)行相應(yīng)的本地應(yīng)用程序,并且將運(yùn)行結(jié)果展示在網(wǎng)頁(yè)界面上。
[0010]較佳地,步驟B之后,進(jìn)一步包括:
[0011]C、本地應(yīng)用程序運(yùn)行后,網(wǎng)頁(yè)顯示是否關(guān)閉所述應(yīng)用程序的按鈕,或者在一定的時(shí)間間隔內(nèi)對(duì)程序進(jìn)行關(guān)閉操作。
[0012]較佳地,應(yīng)用程序包裝器根據(jù)所述配置信息和參數(shù)運(yùn)行相應(yīng)的本地應(yīng)用程序包括:
[0013]應(yīng)用程序包裝器啟動(dòng)時(shí),利用進(jìn)程類啟動(dòng)本地應(yīng)用程序,本地應(yīng)用程序啟動(dòng)后調(diào)用事件處理委托,然后調(diào)用行動(dòng)委托傳入?yún)?shù);
[0014]在行動(dòng)委托中,通過(guò)調(diào)用應(yīng)用程序編程接口來(lái)判斷本地應(yīng)用程序進(jìn)程是否已經(jīng)啟動(dòng)完成,然后調(diào)用API函數(shù)將指定的本地應(yīng)用程序嵌入當(dāng)前的自定義控件。
[0015]較佳地,本地應(yīng)用程序的配置信息包括一個(gè)URL連接文件,所述URL連接文件中包含表示本地應(yīng)用程序的啟動(dòng)路徑的配置項(xiàng)。
[0016]較佳地,本地應(yīng)用程序的配置信息包括一個(gè)文件名為dmb.conf的配置文件。
[0017]較佳地,步驟A之前,進(jìn)一步包括:對(duì)本地應(yīng)用程序進(jìn)行初始化,所述初始化包括:
[0018]讀取本地應(yīng)用程序的配置文件,并且生效本地應(yīng)用程序所需的JSON文件;
[0019]啟動(dòng)本地應(yīng)用程序的所需的索引文件,索引文件格式為Javascript,其中包含了啟動(dòng)應(yīng)用程序所需的信息,以便觸摸互動(dòng)程序進(jìn)行加載。
[0020]較佳地,將所述配置信息和參數(shù)發(fā)送給封裝在網(wǎng)頁(yè)瀏覽器內(nèi)的應(yīng)用程序包裝器是通過(guò)谷歌瀏覽器嵌入式框架CEF的消息機(jī)制實(shí)現(xiàn)的。
[0021]本申請(qǐng)實(shí)施例還提供了一種網(wǎng)頁(yè)瀏覽器,包括:加載模塊和應(yīng)用程序包裝器;
[0022]所述加載模塊用于根據(jù)用戶觸摸或者點(diǎn)擊的操作,通過(guò)網(wǎng)頁(yè)加載本地應(yīng)用程序的配置信息和參數(shù),并將所述配置信息和參數(shù)發(fā)送給封裝在網(wǎng)頁(yè)瀏覽器內(nèi)的應(yīng)用程序包裝器;
[0023]所述應(yīng)用程序包裝器用于根據(jù)所述配置信息和參數(shù)運(yùn)行相應(yīng)的本地應(yīng)用程序,并且將運(yùn)行結(jié)果展示在網(wǎng)頁(yè)界面上。
[0024]較佳地,所述網(wǎng)頁(yè)瀏覽器進(jìn)一步包括:
[0025]程序關(guān)閉模塊,用于在本地應(yīng)用程序運(yùn)行后,在網(wǎng)頁(yè)上顯示是否關(guān)閉所述應(yīng)用程序的按鈕,或者在一定的時(shí)間間隔內(nèi)對(duì)程序進(jìn)行關(guān)閉操作。
[0026]較佳地,應(yīng)用程序包裝器進(jìn)一步包括:
[0027]進(jìn)程類啟動(dòng)單元,用于在應(yīng)用程序包裝器啟動(dòng)時(shí),利用進(jìn)程類啟動(dòng)本地應(yīng)用程序;
[0028]事件處理委托單元,用于在本地應(yīng)用程序啟動(dòng)后調(diào)用事件處理委托;
[0029]行動(dòng)委托單元,用于通過(guò)調(diào)用應(yīng)用程序編程接口來(lái)判斷本地應(yīng)用程序進(jìn)程是否已經(jīng)啟動(dòng)完成,然后調(diào)用API函數(shù)將指定的本地應(yīng)用程序嵌入當(dāng)前的自定義控件。
[0030]較佳地,本地應(yīng)用程序的配置信息包括一個(gè)URL連接文件,所述URL連接文件中包含表示本地應(yīng)用程序的啟動(dòng)路徑的配置項(xiàng)。
[0031]較佳地,本地應(yīng)用程序的配置信息包括一個(gè)文件名為dmb.conf的配置文件。
[0032]較佳地,網(wǎng)頁(yè)瀏覽器進(jìn)一步包括:初始化模塊,用于讀取本地應(yīng)用程序的配置文件,并且生效本地應(yīng)用程序所需的JSON文件;啟動(dòng)本地應(yīng)用程序的所需的索引文件,索引文件格式為Javascript,其中包含了啟動(dòng)應(yīng)用程序所需的信息,以便觸摸互動(dòng)程序進(jìn)行加載。
[0033]較佳地,將所述配置信息和參數(shù)發(fā)送給封裝在網(wǎng)頁(yè)瀏覽器內(nèi)的應(yīng)用程序包裝器是通過(guò)谷歌瀏覽器嵌入式框架CEF的消息機(jī)制實(shí)現(xiàn)的。
[0034]從以上技術(shù)方案可以看出,通過(guò)配置本地應(yīng)用程序目錄中的配置信息和創(chuàng)建本地應(yīng)用程序的URL連接文件,以便封裝在網(wǎng)頁(yè)瀏覽器內(nèi)的應(yīng)用程序包裝器對(duì)本地應(yīng)用程序進(jìn)行調(diào)用,從而實(shí)現(xiàn)直接在網(wǎng)頁(yè)中運(yùn)行本地應(yīng)用程序。本申請(qǐng)方案無(wú)需進(jìn)行安裝插件的方式來(lái)運(yùn)行本地運(yùn)用程序,操作簡(jiǎn)單,配置靈活,能夠增強(qiáng)用戶交互性和用戶體驗(yàn)。
【專利附圖】
【附圖說(shuō)明】
[0035]圖1為本申請(qǐng)?zhí)峁┑耐ㄟ^(guò)網(wǎng)頁(yè)瀏覽器調(diào)用本地應(yīng)用程序的基本流程示意圖;
[0036]圖2為本申請(qǐng)實(shí)施例提供的網(wǎng)頁(yè)瀏覽器調(diào)用本地應(yīng)用程序顯示的流程示意圖;
[0037]圖3為本申請(qǐng)另一實(shí)施例提供的本地應(yīng)用程序的配置過(guò)程示意圖;
[0038]圖4a為對(duì)應(yīng)無(wú)參數(shù)啟動(dòng)本地應(yīng)用程序的URL連接文件的示意圖;
[0039]圖4b為對(duì)應(yīng)有參數(shù)啟動(dòng)本地應(yīng)用程序的URL連接文件的示意圖;
[0040]圖4c為配置文件的示意圖;
[0041]圖5為本申請(qǐng)另一實(shí)施例提供的初始化的實(shí)現(xiàn)過(guò)程示意圖;
[0042]圖6為索引文件內(nèi)容示意圖;
[0043]圖7為本申請(qǐng)另一實(shí)施例給出的步驟203的具體實(shí)現(xiàn)過(guò)程示意圖;
[0044]圖8為本申請(qǐng)實(shí)施例提供的網(wǎng)頁(yè)瀏覽器的框圖。
【具體實(shí)施方式】
[0045]本申請(qǐng)技術(shù)方案的總體技術(shù)構(gòu)思包括:
[0046]由于網(wǎng)頁(yè)瀏覽器是基于Windows系統(tǒng),因此可以利用Windows的文件管理方式來(lái)對(duì)本地應(yīng)用程序進(jìn)行管理,通過(guò)配置本地應(yīng)用程序目錄中的配置信息和創(chuàng)建本地應(yīng)用程序的URL連接文件,以便網(wǎng)頁(yè)瀏覽器對(duì)本地應(yīng)用程序進(jìn)行調(diào)用。配置信息中包含程序的存儲(chǔ)路徑和程序運(yùn)行所需要的參數(shù)。Windows的文件管理方式包括:按照?qǐng)D標(biāo)(大圖標(biāo)、小圖標(biāo)、中等圖標(biāo)、超大圖標(biāo))排列各個(gè)文件,或者按照列表形式、詳細(xì)信息、按內(nèi)容等方式排列各個(gè)文件。參數(shù)是指啟動(dòng)本地應(yīng)用程序時(shí)需要輸入的變量值。有些本地應(yīng)用程序不需要參數(shù),而有些本地應(yīng)用程序需要相應(yīng)的參數(shù)才能進(jìn)行啟動(dòng)。
[0047]本申請(qǐng)?zhí)峁┑耐ㄟ^(guò)網(wǎng)頁(yè)瀏覽器調(diào)用本地應(yīng)用程序的基本流程如圖1所示,包括如下步驟:
[0048]步驟101:網(wǎng)頁(yè)瀏覽器接收用戶觸摸或者點(diǎn)擊的操作,通過(guò)網(wǎng)頁(yè)加載應(yīng)用程序的配置信息和參數(shù)發(fā)送給封裝在網(wǎng)頁(yè)瀏覽器內(nèi)的應(yīng)用程序包裝器。
[0049]步驟102:應(yīng)用程序包裝器根據(jù)所述配置信息和參數(shù)運(yùn)行相應(yīng)的應(yīng)用程序,并且將運(yùn)行結(jié)果展示在網(wǎng)頁(yè)界面上。
[0050]步驟103:本地應(yīng)用程序運(yùn)行后,網(wǎng)頁(yè)顯示是否關(guān)閉所述應(yīng)用程序的按鈕,或者在一定的時(shí)間間隔內(nèi)對(duì)程序進(jìn)行關(guān)閉等操作。
[0051]根據(jù)本申請(qǐng)的一個(gè)實(shí)施例,網(wǎng)頁(yè)中調(diào)用本地應(yīng)用程序是使用了 CEF框架實(shí)現(xiàn)瀏覽器功能,CEF框架實(shí)現(xiàn)的網(wǎng)頁(yè)初始化時(shí),加載預(yù)先生成的JSON文件和配置文件。
[0052]CEF是谷歌瀏覽器嵌入式框架(Chromium Embedded Framework)的縮寫,是個(gè)基于谷歌瀏覽器(Google Chromium)項(xiàng)目的開(kāi)源控件,支持Windows, Linux, Mac平臺(tái)。具體地說(shuō)就是一個(gè)可以將瀏覽器功能(頁(yè)面渲染,Javascript執(zhí)行)嵌入到其他應(yīng)用程序的框架。JSON文件為觸摸互動(dòng)程序通過(guò)對(duì)相應(yīng)文件夾屬性和文件夾中的配置,生成的Javascript文件。
[0053]為使本申請(qǐng)技術(shù)方案的技術(shù)原理、特點(diǎn)以及技術(shù)效果更加清楚,以下結(jié)合具體實(shí)施例對(duì)本申請(qǐng)技術(shù)方案進(jìn)行詳細(xì)闡述。
[0054]根據(jù)本申請(qǐng)的另一實(shí)施例,應(yīng)用程序包裝器(appcontainer)是由C#語(yǔ)言編寫的、可以把其他窗體應(yīng)用程序(本地應(yīng)用程序)嵌入的一個(gè)容器,屬于C#的自定義控件。
[0055]應(yīng)用程序包裝器的屬性包括:
[0056](I)、繼承了面板(Panel)控件;
[0057](2)、行動(dòng)(Act1n)委托:封裝一個(gè)方法,該方法具有兩個(gè)參數(shù)并且不返回值(如:public delegate void Act1n<Tl, T2> (Tlargl, T2arg2));
[0058](3)、事件處理(EventHandler)委托:表示將處理不包含事件數(shù)據(jù)的事件。
[0059]應(yīng)用程序包裝器的實(shí)現(xiàn)方法包括:
[0060](I)、應(yīng)用程序包裝器啟動(dòng)時(shí),利用進(jìn)程(Process、ProcessStartInfo)類啟動(dòng)本地應(yīng)用程序,本地應(yīng)用程序啟動(dòng)后調(diào)用事件處理委托,然后調(diào)用行動(dòng)委托傳入?yún)?shù)。
[0061](2)在行動(dòng)委托中,通過(guò)調(diào)用應(yīng)用程序編程接口(API)來(lái)判斷本地應(yīng)用程序進(jìn)程是否已經(jīng)啟動(dòng)完成,然后調(diào)用API函數(shù)(SetParent等)將指定的本地應(yīng)用程序嵌入當(dāng)前的自定義控件。
[0062]本申請(qǐng)實(shí)施例提供的網(wǎng)頁(yè)瀏覽器調(diào)用本地應(yīng)用程序顯示的流程如圖2所示,包括如下步驟:
[0063]步驟201:對(duì)要通過(guò)網(wǎng)頁(yè)顯示的本地應(yīng)用程序進(jìn)行配置。
[0064]本申請(qǐng)另一實(shí)施例提供了本地應(yīng)用程序的配置過(guò)程,如圖3所示,包含以下步驟:
[0065]步驟301:對(duì)本地應(yīng)用程序配置一個(gè)URL連接文件,設(shè)置成.url的格式。URL連接文件中的配置項(xiàng)[InternetShortCut]表示本地應(yīng)用程序的啟動(dòng)路徑。如果本地應(yīng)用程序不是安裝版程序,則應(yīng)用程序的配置僅需要依Windows文件管理方式存放好應(yīng)用程序的目錄。
[0066]步驟302:設(shè)置URL連接文件中的各項(xiàng)參數(shù)。
[0067]若為無(wú)參數(shù)啟動(dòng)本地應(yīng)用程序,配置項(xiàng)[InternetShortCut]中的值為相對(duì)路徑,則表示程序?yàn)榉前惭b版程序,
[0068]若為有參數(shù)啟動(dòng)本地應(yīng)用程序,配置項(xiàng)[InternetShortCut]表示本地應(yīng)用程序的路徑(如果URL為絕對(duì)路徑,則表示該程序?yàn)榘惭b版程序);Sh0Wcl0Se = 0:表示在應(yīng)用程序中不顯示自定義的關(guān)閉按鈕;param:表示應(yīng)用程序所需參數(shù)。
[0069]圖4a和圖4b分別為URL連接文件的示意圖,其中圖4a對(duì)應(yīng)無(wú)參數(shù)啟動(dòng)本地應(yīng)用程序,應(yīng)用程序名為“網(wǎng)點(diǎn)分布”;圖4b對(duì)應(yīng)有參數(shù)啟動(dòng)本地應(yīng)用程序。本地應(yīng)用程序名為“雙向視頻”,URL連接文件名稱設(shè)置成“雙向視頻.url”。
[0070]步驟303:在本地應(yīng)用程序目錄下放置一個(gè)配置文件,配置文件名為dmb.conf,并設(shè)置配置文件中的配置項(xiàng)。例如,當(dāng)該配置文件中包含的配置項(xiàng)“enable”的值為“false”時(shí),表示該程序目錄不顯示。圖4c為配置文件的示意圖。
[0071]步驟202:在啟動(dòng)觸摸互動(dòng)程序后,觸摸互動(dòng)程序?qū)?duì)本地應(yīng)用程序進(jìn)行初始化。
[0072]本申請(qǐng)另一實(shí)施例提供了初始化的實(shí)現(xiàn)過(guò)程,如圖5所示,包含以下步驟:
[0073]步驟501:讀取本地應(yīng)用程序的配置文件,并且生效本地應(yīng)用程序所需的JSON文件。
[0074]步驟502:啟動(dòng)本地應(yīng)用程序的所需的索引文件為dmbjson.js,索引文件格式為Javascript,其中包含了啟動(dòng)應(yīng)用程序所需的信息,如:路徑、參數(shù)、和其他的一些信息,以便觸摸互動(dòng)程序進(jìn)行加載,其內(nèi)容示例如圖6所示。
[0075]步驟203:網(wǎng)頁(yè)點(diǎn)擊事件獲取本地應(yīng)用程序地址,并發(fā)送給應(yīng)用程序包裝器,應(yīng)用包裝器運(yùn)行本地應(yīng)用程序。
[0076]本申請(qǐng)另一實(shí)施例給出了步驟203的具體實(shí)現(xiàn)過(guò)程,如圖7所示,包括如下步驟:
[0077]步驟701:觸摸互動(dòng)程序檢測(cè)用戶點(diǎn)擊或者觸摸應(yīng)用程序圖標(biāo)的事件,若檢測(cè)到,執(zhí)行步驟702。
[0078]步驟702:觸摸互動(dòng)程序嵌入的瀏覽器獲取用戶的操作,并且獲取本地應(yīng)用程序的配置信息和參數(shù)。
[0079]步驟703:觸摸互動(dòng)程序嵌入的瀏覽器通過(guò)CEF的消息機(jī)制通知觸摸互動(dòng)程序啟動(dòng)本地應(yīng)用程序。
[0080]步驟704:觸摸互動(dòng)程序中的應(yīng)用程序包裝器通過(guò)獲取的程序路徑和參數(shù)進(jìn)行封裝管理。
[0081]步驟705:觸摸互動(dòng)程序啟動(dòng)本地應(yīng)用程序。
[0082]步驟706:觸摸互動(dòng)程序檢測(cè)到點(diǎn)擊關(guān)閉應(yīng)用程序按鈕的事件,則關(guān)閉該應(yīng)用程序,或者在規(guī)定時(shí)間關(guān)閉本地應(yīng)用程序。
[0083]觸摸互動(dòng)程序?yàn)闄z測(cè)觸摸事件,根據(jù)觸摸事件生成本地應(yīng)用程序的輸入信號(hào)的應(yīng)用程序,本申請(qǐng)實(shí)施例中,觸摸互動(dòng)程序還用于封裝瀏覽器框架并且調(diào)用本地應(yīng)用程序。
[0084]本申請(qǐng)實(shí)施例還提供了一種網(wǎng)頁(yè)瀏覽器,如圖8所示,網(wǎng)頁(yè)瀏覽器800包括:加載模塊801和應(yīng)用程序包裝器802 ;
[0085]所述加載模塊801用于根據(jù)用戶觸摸或者點(diǎn)擊的操作,通過(guò)網(wǎng)頁(yè)加載本地應(yīng)用程序的配置信息和參數(shù),并將所述配置信息和參數(shù)發(fā)送給封裝在網(wǎng)頁(yè)瀏覽器內(nèi)的應(yīng)用程序包裝器802 ;
[0086]所述應(yīng)用程序包裝器802用于根據(jù)所述配置信息和參數(shù)運(yùn)行相應(yīng)的本地應(yīng)用程序,并且將運(yùn)行結(jié)果展示在網(wǎng)頁(yè)界面上。
[0087]根據(jù)本申請(qǐng)的另一實(shí)施例,所述網(wǎng)頁(yè)瀏覽器進(jìn)一步包括:
[0088]程序關(guān)閉模塊,用于在本地應(yīng)用程序運(yùn)行后,在網(wǎng)頁(yè)上顯示是否關(guān)閉所述應(yīng)用程序的按鈕,或者在一定的時(shí)間間隔內(nèi)對(duì)程序進(jìn)行關(guān)閉操作。
[0089]根據(jù)本申請(qǐng)的另一實(shí)施例,應(yīng)用程序包裝器進(jìn)一步包括:
[0090]進(jìn)程類啟動(dòng)單元,用于在應(yīng)用程序包裝器啟動(dòng)時(shí),利用進(jìn)程類啟動(dòng)本地應(yīng)用程序;
[0091]事件處理委托單元,用于在本地應(yīng)用程序啟動(dòng)后調(diào)用事件處理委托;
[0092]行動(dòng)委托單元,用于通過(guò)調(diào)用應(yīng)用程序編程接口來(lái)判斷本地應(yīng)用程序進(jìn)程是否已經(jīng)啟動(dòng)完成,然后調(diào)用API函數(shù)將指定的本地應(yīng)用程序嵌入當(dāng)前的自定義控件。
[0093]根據(jù)本申請(qǐng)的另一實(shí)施例,本地應(yīng)用程序的配置信息包括一個(gè)URL連接文件,所述URL連接文件中包含表示本地應(yīng)用程序的啟動(dòng)路徑的配置項(xiàng)。
[0094]根據(jù)本申請(qǐng)的另一實(shí)施例,本地應(yīng)用程序的配置信息包括一個(gè)文件名為dmb.conf的配置文件。
[0095]根據(jù)本申請(qǐng)的另一實(shí)施例,網(wǎng)頁(yè)瀏覽器進(jìn)一步包括:初始化模塊,用于讀取本地應(yīng)用程序的配置文件,并且生效本地應(yīng)用程序所需的JSON文件;啟動(dòng)本地應(yīng)用程序的所需的索引文件,索引文件格式為Javascript,其中包含了啟動(dòng)應(yīng)用程序所需的信息,以便觸摸互動(dòng)程序進(jìn)行加載。
[0096]根據(jù)本申請(qǐng)的另一實(shí)施例,將所述配置信息和參數(shù)發(fā)送給封裝在網(wǎng)頁(yè)瀏覽器內(nèi)的應(yīng)用程序包裝器是通過(guò)谷歌瀏覽器嵌入式框架CEF的消息機(jī)制實(shí)現(xiàn)的。
[0097]以上所述僅為本申請(qǐng)的較佳實(shí)施例而已,并不用以限制本申請(qǐng)的保護(hù)范圍,凡在本申請(qǐng)技術(shù)方案的精神和原則之內(nèi),所做的任何修改、等同替換、改進(jìn)等,均應(yīng)包含在本申請(qǐng)保護(hù)的范圍之內(nèi)。
【權(quán)利要求】
1.一種通過(guò)網(wǎng)頁(yè)瀏覽器調(diào)用本地應(yīng)用程序的方法,其特征在于,包括: A、網(wǎng)頁(yè)瀏覽器根據(jù)用戶觸摸或者點(diǎn)擊的操作,通過(guò)網(wǎng)頁(yè)加載本地應(yīng)用程序的配置信息和參數(shù),并將所述配置信息和參數(shù)發(fā)送給封裝在網(wǎng)頁(yè)瀏覽器內(nèi)的應(yīng)用程序包裝器; B、應(yīng)用程序包裝器根據(jù)所述配置信息和參數(shù)運(yùn)行相應(yīng)的本地應(yīng)用程序,并且將運(yùn)行結(jié)果展示在網(wǎng)頁(yè)界面上。
2.根據(jù)權(quán)利要求1所述的方法,其特征在于,步驟B之后,進(jìn)一步包括: C、本地應(yīng)用程序運(yùn)行后,網(wǎng)頁(yè)顯示是否關(guān)閉所述應(yīng)用程序的按鈕,或者在一定的時(shí)間間隔內(nèi)對(duì)程序進(jìn)行關(guān)閉操作。
3.根據(jù)權(quán)利要求1所述的方法,其特征在于,應(yīng)用程序包裝器根據(jù)所述配置信息和參數(shù)運(yùn)行相應(yīng)的本地應(yīng)用程序包括: 應(yīng)用程序包裝器啟動(dòng)時(shí),利用進(jìn)程類啟動(dòng)本地應(yīng)用程序,本地應(yīng)用程序啟動(dòng)后調(diào)用事件處理委托,然后調(diào)用行動(dòng)委托傳入?yún)?shù); 在行動(dòng)委托中,通過(guò)調(diào)用應(yīng)用程序編程接口來(lái)判斷本地應(yīng)用程序進(jìn)程是否已經(jīng)啟動(dòng)完成,然后調(diào)用API函數(shù)將指定的本地應(yīng)用程序嵌入當(dāng)前的自定義控件。
4.根據(jù)權(quán)利要求1所述的方法,其特征在于,本地應(yīng)用程序的配置信息包括一個(gè)URL連接文件,所述URL連接文件中包含表示本地應(yīng)用程序的啟動(dòng)路徑的配置項(xiàng)。
5.根據(jù)權(quán)利要求1所述的方法,其特征在于,本地應(yīng)用程序的配置信息包括一個(gè)文件名為dmb.conf的配置文件。
6.根據(jù)權(quán)利要求1所述的方法,其特征在于,步驟A之前,進(jìn)一步包括:對(duì)本地應(yīng)用程序進(jìn)行初始化,所述初始化包括: 讀取本地應(yīng)用程序的配置文件,并且生效本地應(yīng)用程序所需的JSON文件; 啟動(dòng)本地應(yīng)用程序的所需的索引文件,索引文件格式為Javascript,其中包含了啟動(dòng)應(yīng)用程序所需的信息,以便觸摸互動(dòng)程序進(jìn)行加載。
7.根據(jù)權(quán)利要求6所述的方法,其特征在于,將所述配置信息和參數(shù)發(fā)送給封裝在網(wǎng)頁(yè)瀏覽器內(nèi)的應(yīng)用程序包裝器是通過(guò)谷歌瀏覽器嵌入式框架CEF的消息機(jī)制實(shí)現(xiàn)的。
8.—種網(wǎng)頁(yè)瀏覽器,其特征在于,包括:加載模塊和應(yīng)用程序包裝器; 所述加載模塊用于根據(jù)用戶觸摸或者點(diǎn)擊的操作,通過(guò)網(wǎng)頁(yè)加載本地應(yīng)用程序的配置信息和參數(shù),并將所述配置信息和參數(shù)發(fā)送給封裝在網(wǎng)頁(yè)瀏覽器內(nèi)的應(yīng)用程序包裝器; 所述應(yīng)用程序包裝器用于根據(jù)所述配置信息和參數(shù)運(yùn)行相應(yīng)的本地應(yīng)用程序,并且將運(yùn)行結(jié)果展示在網(wǎng)頁(yè)界面上。
9.根據(jù)權(quán)利要求8所述的網(wǎng)頁(yè)瀏覽器,其特征在于,所述網(wǎng)頁(yè)瀏覽器進(jìn)一步包括: 程序關(guān)閉模塊,用于在本地應(yīng)用程序運(yùn)行后,在網(wǎng)頁(yè)上顯示是否關(guān)閉所述應(yīng)用程序的按鈕,或者在一定的時(shí)間間隔內(nèi)對(duì)程序進(jìn)行關(guān)閉操作。
10.根據(jù)權(quán)利要求8所述的網(wǎng)頁(yè)瀏覽器,其特征在于,應(yīng)用程序包裝器進(jìn)一步包括: 進(jìn)程類啟動(dòng)單元,用于在應(yīng)用程序包裝器啟動(dòng)時(shí),利用進(jìn)程類啟動(dòng)本地應(yīng)用程序; 事件處理委托單元,用于在本地應(yīng)用程序啟動(dòng)后調(diào)用事件處理委托; 行動(dòng)委托單元,用于通過(guò)調(diào)用應(yīng)用程序編程接口來(lái)判斷本地應(yīng)用程序進(jìn)程是否已經(jīng)啟動(dòng)完成,然后調(diào)用API函數(shù)將指定的本地應(yīng)用程序嵌入當(dāng)前的自定義控件。
11.根據(jù)權(quán)利要求8所述的網(wǎng)頁(yè)瀏覽器,其特征在于,本地應(yīng)用程序的配置信息包括一個(gè)URL連接文件,所述URL連接文件中包含表示本地應(yīng)用程序的啟動(dòng)路徑的配置項(xiàng)。
12.根據(jù)權(quán)利要求8所述的網(wǎng)頁(yè)瀏覽器,其特征在于,本地應(yīng)用程序的配置信息包括一個(gè)文件名為dmb.conf的配置文件。
13.根據(jù)權(quán)利要求8所述的網(wǎng)頁(yè)瀏覽器,其特征在于,網(wǎng)頁(yè)瀏覽器進(jìn)一步包括:初始化模塊,用于讀取本地應(yīng)用程序的配置文件,并且生效本地應(yīng)用程序所需的JSON文件;啟動(dòng)本地應(yīng)用程序的所需的索引文件,索引文件格式為Javascript,其中包含了啟動(dòng)應(yīng)用程序所需的信息,以便觸摸互動(dòng)程序進(jìn)行加載。
14.根據(jù)權(quán)利要求13所述的網(wǎng)頁(yè)瀏覽器,其特征在于,將所述配置信息和參數(shù)發(fā)送給封裝在網(wǎng)頁(yè)瀏覽器內(nèi)的應(yīng)用程序包裝器是通過(guò)谷歌瀏覽器嵌入式框架CEF的消息機(jī)制實(shí)現(xiàn)的。
【文檔編號(hào)】G06F17/30GK104239063SQ201410491791
【公開(kāi)日】2014年12月24日 申請(qǐng)日期:2014年9月23日 優(yōu)先權(quán)日:2014年9月23日
【發(fā)明者】陳立情, 邱錦凱, 黃印國(guó) 申請(qǐng)人:福建星網(wǎng)視易信息系統(tǒng)有限公司