新四季網

一種應用程式開發的方法和裝置的製作方法

2023-06-05 00:17:11 1

專利名稱:一種應用程式開發的方法和裝置的製作方法
技術領域:
本發明涉及計算機領域,特別涉及一種應用程式開發的方法和裝置。
背景技術:
隨著計算機技術的快速發展,計算機領域出現了很多應用程式開發的方法,如原生應用程式或web應用程式等。原生應用程式是指基於移動平臺開發的應用程式。原生應用程式開發時需要使用移動平臺限定的開發語言、工具集、編譯器、甚至開發平臺。以ios移動平臺為例,開發基於ios移動平臺的原生應用程式需要使用objective-c開發語言,使用apple發布的xcodesdk進行編譯調試,並且只能在mac系統上進行開發、編譯、模擬測試、打包部署等工作。這種開發方式可以使用現有sdk(SoftwareDevelopment Kit,軟體開發工具包)所提供的一些工具和組件,性能比較好,接口比較豐富,但是會被移動平臺限制所能使用的技術和工具,而且每次開發只能針對特定平臺,不具有跨平臺能力。web應用程式是指基於web技術,如javascript、css、或html等,開發的應用程式。web應用程式開發時,開發者可以使用自己熟悉的web技術、開發工具(如Dreamweaver> Aptana、或 Notepad++)、和系統平臺(如 windows 或 Iinux)等進行開發,還可以使用PC (Personal Computer,個人計算機)上常用的瀏覽器直接進行調試,無需受移動平臺所指定的開發工具的限制。這種開發方式簡單便捷,但是只能運行在瀏覽器上,受瀏覽器安全沙箱機制的限制,只能給開發者提供有限的接口,可能無法滿足所有項目需求,並且圖形渲染性能和數據計算能力也不如原生應用程式,可能會給項目引入性能問題。綜合上述,現有的原始應用程式開發方法受限於特定的平臺,現有的web應用程式開發方法接觸的系統原生API (Application Programming Interface,應用程式接口)有限,因此,如何擺脫平臺限制,同時能夠接觸更多的系統原生API,現有技術還沒有相關的解決方案。

發明內容
為了擺脫平臺限制,同時能夠接觸更多的系統原生API,本發明實施例提供了一種應用程式開發的方法和裝置。所述技術方案如下—種應用程式開發的方法,所述方法包括將系統原生應用程式接口 API封裝成不同的接口,由所述不同的接口組成接口層;基於web技術開發應用程式,所述應用程式觸發瀏覽器相應的事件,以通知瀏覽器組件層所需執行的操作和執行所述操作所需的參數;瀏覽器組件層監聽到所述事件發生改變後,根據所述操作和執行所述操作所需的參數,向所述接口層相應的接口進行調用,並將結果返回給所述應用程式進行處理。一種應用程式開發的裝置,所述裝置包括
接口層模塊,用於將系統原生應用程式接口 API封裝成不同的接口,由所述不同的接口組成接口層;Web層模塊,用於基於web技術開發應用程式,所述應用程式觸發瀏覽器相應的事件,以通知瀏覽器組件層所需執行的操作和執行所述操作所需的參數;瀏覽器組件層模塊,用於瀏覽器組件層監聽到所述事件發生改變後,根據所述操作和執行所述操作所需的參數,向所述接口層相應的接口進行調用,並將結果返回給所述應用程式 進行處理。本發明實施例提供的技術方案帶來的有益效果是通過將系統原生API封裝成不同的接口,基於web技術開發應用程式,由瀏覽器組件層對應用程式和接口層的接口進行適配,從而擺脫了平臺限制,開發者可以使用自己熟悉的web技術和工具進行開發,簡化了開發過程,同時通過對系統原生API進行封裝得到的接口層,web應用程式能夠接觸更多的系統原生API,提升了 web能力。


圖I是本發明實施例I中提供的應用程式開發的方法流程圖;圖2是本發明實施例I中提供的應用程式開發的結構示意圖;圖3是本發明實施例I中提供的應用程式開發的裝置結構示意圖。
具體實施例方式為使本發明的目的、技術方案和優點更加清楚,下面將結合附圖對本發明實施方式作進一步地詳細描述。實施例I參見圖1,本實施例提供了一種應用程式開發的方法,包括101 :將系統原生API封裝成不同的接口,由不同的接口組成接口層;102 :基於web技術開發應用程式,該應用程式觸發瀏覽器相應的事件,以通知瀏覽器組件層所需執行的操作和執行該操作所需的參數;103:瀏覽器組件層監聽到該事件發生改變後,根據該操作和執行該操作所需的參數,向接口層相應的接口進行調用,並將結果返回給該應用程式進行處理。具體的,應用程式可以通過回調函數處理返回的結果。上述方法具體可基於圖2所示的應用程式開發架構實現。該架構包括系統原生API層201、接口層202、瀏覽器組件層203和web層204。系統原生API層201,由移動平臺底層提供的系統原生API組成,移動平臺如ios或 android 等。接口層202,用於將系統原生API封裝成不同的接口,由不同的接口組成該接口層。接口層至少包括文件接口(File)、傳感器接口(Sensor)、設備接口(Device)和攝像頭接口(Camera)中的至少一個。文件接口,用於獲取和修改文件和目錄的信息,打開、關閉、讀取、或寫入文件內容,複製、移動、或刪除文件,實現文件上傳或發送圖片。由於ios移動平臺上不允許javascript瀏覽文件系統,因此通過本實施例的文件接口,則可突破限制,實現文件上傳、發送圖片等文件相關功能。傳感器接口,用於提供LBS (Location Based Service,基於位置服務)的接口,包括加速度計(Accelerometer)、羅盤(Compass)、或 GPS (Global PositioningSystem,全球定位系統)等位置信息和速度信息的接口。備接口,用於提供獲取設備相關信息的接口,設備相關信息包括設備名、設備版本、或系統版本。設備接口可以給web技術提供設備相關信息,從而判斷不同版本的系統和平臺以做相應兼容。web層204,用於基於各種web技術開發應用程式,該應用程式觸發瀏覽器相應的事件,以通知瀏覽器組件層203所需執行的操作和執行該操作所需的參數。Web技術包括但不限於javascript、css、或html等。開發者可以像開發基於桌面瀏覽器的web應用程式一樣,使用自己熟悉的web技術和工具進行開發,也可以直接使用特性相近的瀏覽器,如safari, chrome等進行快速測試,只需與下層的瀏覽器組件層約定好通信協議即可。具體的,應用程式可以通過格式為協議頭調用命令參數的通信協議格式觸發瀏覽器相應的事件。其中,冒號為欄位分隔符,協議頭,用於通知瀏覽器組件層本請求是調用接口層相應的接口的請求;調用命令,用於通知瀏覽器組件層所需執行的操作;參數,用於通知瀏覽器組件層執行操作所需的參數,參數可以有一個或多個。另外,應用程式也可以通過其他通信協議格式觸發瀏覽器相應的事件,只要應用程式和瀏覽器雙方能夠互相識別和理解即可。以QQ桌面項目所使用的javascript與瀏覽器組件層之間的通信協議格式QQDesk: open_urI: web2. qq. com為例,QQDesk為協議頭,通知瀏覽器組件層這是一個由web層javascript技術調用接口層相應接口的請求,同時該協議頭可以讓瀏覽器區分開地址跳轉等其他協議請求,open_url為調用命令,通知瀏覽器組件層本請求需要打開一個瀏覽器窗口,web2. qq. com為頁面地址參數,通知瀏覽器組件層需要打開的頁面地址。瀏覽器組件層203,用於適配接口層和web層。瀏覽器組件層監聽到事件發生改變後,根據該操作和執行該操作所需的參數,向接口層相應的接口進行調用,並將結果返回給該應用程式進行處理,該應用程式可以通過回調函數處理返回的結果。以瀏覽器的location事件為例,基於web層的javascript開發的應用進程需要調用下層接口時,通過修改window. Location通知瀏覽器組件層,瀏覽器組件層相應的瀏覽器組件監聽到Location事件發生改變後,分析Location字符串,判斷javascript需要調用的接口和傳入的參數,並向接口層相應的接口進行調用,然後將結果返回給該應用進程,該應用進程可以通過回調函數處理返回的結果。另外,瀏覽器組件層203的各個瀏覽器組件可以由平臺SDK提供,也可以是開發人員自己實現的web瀏覽器組件或第三方提供的瀏覽器組件,能夠為上層web層提供運行環境的組件皆可。進一步的,本實施例中的接口層和瀏覽器組件層都是平臺相關的,即跨平臺移植時需要實現利用新平臺的開發技術重新實現接口層和瀏覽器組件層。以ios平臺為例,接口層和瀏覽器組件層需要使用objective-c開發語言在xcode sdk上進行開發,瀏覽器組件可使用xcode sdk上提供的瀏覽器組件。但對web層而言接口沒有任何變化,所以web層可以在多個平臺重用,提高代碼的復用率,無須再次開發,節省平臺間移植成本。
另外,本實施例還可以通過加殼方式將web應用程式打包成原生應用程式,即將接口層和瀏覽器組件層作為客戶端殼,將客戶端殼和基於各種web技術開發的應用程式打包成原生應用程式。 本實施例通過將系統原生API封裝成不同的接口,基於web技術開發應用程式,由瀏覽器組件層對應用程式和接口層的接口進行適配,從而擺脫了平臺限制,開發者可以使用自己熟悉的web技術和工具進行開發,簡化了開發過程,同時通過對系統原生API進行封裝得到的接口層,web應用程式能夠接觸更多的系統原生API,提升了 web能力。實施例2參見圖3,本實施例提供了一種應用程式開發的裝置,包括接口層模塊301,用於將系統原生API封裝成不同的接口,由不同的接口組成接口層;Web層模塊302,用於基於web技術開發應用程式,應用程式觸發瀏覽器相應的事件,以通知瀏覽器組件層所需執行的操作和執行操作所需的參數;瀏覽器組件層模塊303,用於瀏覽器組件層監聽到事件發生改變後,根據操作和執行操作所需的參數,向接口層相應的接口進行調用,並將結果返回給該應用程式進行處理。該應用程式可以通過回調函數處理返回的結果。該裝置還包括打包模塊304,用於將接口層和瀏覽器組件層作為客戶端殼,並將客戶端殼和應用程式打包成原生應用程式。其中,不同的接口包括文件接口、傳感器接口、設備接口和攝像頭接口中的至少一個。文件接口,用於獲取和修改文件和目錄的信息,打開、關閉、讀取、或寫入文件內容,複製、移動、或刪除文件,實現文件上傳或發送圖片; 傳感器接口,用於提供基於位置服務LBS的接口,包括加速度計、羅盤、或全球定位系統;設備接口,用於提供獲取設備相關信息的接口,設備相關信息包括設備名、設備版本、或系統版本;攝像頭接口,用於提供調用攝像頭圖形數據的接口。其中,Web層模塊302,具體用於基於web技術開發應用程式,應用程式通過格式為協議頭調用命令參數的通信協議格式觸發瀏覽器相應的事件,其中,協議頭,用於通知瀏覽器組件層本請求是調用接口層相應的接口的請求;調用命令,用於通知瀏覽器組件層所需執行的操作;參數,用於通知瀏覽器組件層執行操作所需的參數。具體實例參見實施例I。 本實施例的裝置涉及的接口層模塊301,Web層模塊302,瀏覽器組件層模塊303,分別相當於方法實施例中的接口層、web層和瀏覽器組件層,與方法實施例屬於同一構思,具體實現過程詳見方法實施例,這裡不再贅述。本實施例通過將系統原生API封裝成不同的接口,基於web技術開發應用程式,由瀏覽器組件層對應用程式和接口層的接口進行適配,從而擺脫了平臺限制,開發者可以使用自己熟悉的web技術和工具進行開發,簡化了開發過程,同時通過對系統原生API進行封裝得到的接口層,web應用程式能夠接觸更多的系統原生API,提升了 web能力。以上實施例提供的技術方案中的全部或部分內容可以通過軟體編程實現,其軟體程序存儲在可讀取的存儲介質中,存儲介質例如計算機中的硬碟、光碟或軟盤。
以上所述僅為本發明的較佳實施例,並不用以限制本發明,凡在本發明的精神和原則之內,所作的任何修改、等同替換、改進等,均應包含在本發明的保護範圍之內。
權利要求
1.一種應用程式開發的方法,其特徵在於,所述方法包括 將系統原生應用程式接口 API封裝成不同的接口,由所述不同的接口組成接口層; 基於web技術開發應用程式,所述應用程式觸發瀏覽器相應的事件,以通知瀏覽器組件層所需執行的操作和執行所述操作所需的參數; 瀏覽器組件層監聽到所述事件發生改變後,根據所述操作和執行所述操作所需的參數,向所述接口層相應的接口進行調用,並將結果返回給所述應用程式進行處理。
2.根據權利要求I所述的方法,其特徵在於,所述方法還包括 將所述接口層和所述瀏覽器組件層作為客戶端殼,並將所述客戶端殼和所述應用程式打包成原生應用程式。
3.根據權利要求I所述的方法,其特徵在於,所述不同的接口包括文件接口、傳感器接口、設備接口和攝像頭接口中的至少一個。
4.根據權利要求3所述的方法,其特徵在於,所述文件接口,用於獲取和修改文件和目錄的信息,打開、關閉、讀取、或寫入文件內容,複製、移動、或刪除文件,實現文件上傳或發送圖片; 所述傳感器接口,用於提供基於位置服務LBS的接口,包括加速度計、羅盤、或全球定位系統; 所述設備接口,用於提供獲取設備相關信息的接口,所述設備相關信息包括設備名、設備版本、或系統版本; 所述攝像頭接口,用於提供調用攝像頭圖形數據的接口。
5.根據權利要求I所述的方法,其特徵在於,所述應用程式觸發瀏覽器相應的事件,以通知瀏覽器組件層所需執行的操作和執行所述操作所需的參數,包括 所述應用程式通過格式為協議頭調用命令參數的通信協議格式觸發瀏覽器相應的事件, 其中,所述協議頭,用於通知所述瀏覽器組件層本請求是調用所述接口層相應的接口的請求; 所述調用命令,用於通知所述瀏覽器組件層所需執行的操作; 所述參數,用於通知所述瀏覽器組件層執行所述操作所需的參數。
6.一種應用程式開發的裝置,其特徵在於,所述裝置包括 接口層模塊,用於將系統原生應用程式接口 API封裝成不同的接口,由所述不同的接口組成接口層; Web層模塊,用於基於web技術開發應用程式,所述應用程式觸發瀏覽器相應的事件,以通知瀏覽器組件層所需執行的操作和執行所述操作所需的參數; 瀏覽器組件層模塊,用於瀏覽器組件層監聽到所述事件發生改變後,根據所述操作和執行所述操作所需的參數,向所述接口層相應的接口進行調用,並將結果返回給所述應用程式進行處理。
7.根據權利要求6所述的裝置,其特徵在於,所述裝置還包括 打包模塊,用於將所述接口層和所述瀏覽器組件層作為客戶端殼,並將所述客戶端殼和所述應用程式打包成原生應用程式。
8.根據權利要求6所述的裝置,其特徵在於,所述不同的接口包括文件接口、傳感器接口、設備接口和攝像頭接口中的至少一個。
9.根據權利要求8所述的裝置,其特徵在於,所述文件接口,用於獲取和修改文件和目錄的信息,打開、關閉、讀取、或寫入文件內容,複製、移動、或刪除文件,實現文件上傳或發送圖片; 所述傳感器接口,用於提供基於位置服務LBS的接口,包括加速度計、羅盤、或全球定位系統; 所述設備接口,用於提供獲取設備相關信息的接口,所述設備相關信息包括設備名、設備版本、或系統版本; 所述攝像頭接口,用於提供調用攝像頭圖形數據的接口。
10.根據權利要求6所述的裝置,其特徵在於,所述Web層模塊,具體用於基於web技術開發應用程式,所述應用程式通過格式為協議頭調用命令參數的通信協議格式觸發瀏覽器相應的事件, 其中,所述協議頭,用於通知所述瀏覽器組件層本請求是調用所述接口層相應的接口的請求; 所述調用命令,用於通知所述瀏覽器組件層所需執行的操作; 所述參數,用於通知所述瀏覽器組件層執行所述操作所需的參數。
全文摘要
本發明公開了一種應用程式開發的方法和裝置,屬於計算機領域。方法包括將系統原生API封裝成不同的接口,由不同的接口組成接口層;基於web技術開發應用程式,應用程式觸發瀏覽器相應的事件,以通知瀏覽器組件層所需執行的操作和執行操作所需的參數;瀏覽器組件層監聽到事件發生改變後,根據操作和執行操作所需的參數,向接口層相應的接口進行調用,將結果返回給應用程式進行處理。裝置包括接口層模塊、web層模塊和瀏覽器組件層模塊。通過上述方案,擺脫了平臺限制,開發者可以使用自己熟悉的web技術和工具進行開發,簡化了開發過程,同時通過對系統原生API進行封裝得到的接口層,web應用程式能夠接觸更多的系統原生API,提升了web能力。
文檔編號G06F9/44GK102622211SQ20111002966
公開日2012年8月1日 申請日期2011年1月27日 優先權日2011年1月27日
發明者唐啟宏 申請人:騰訊科技(深圳)有限公司

同类文章

一種新型多功能組合攝影箱的製作方法

一種新型多功能組合攝影箱的製作方法【專利摘要】本實用新型公開了一種新型多功能組合攝影箱,包括敞開式箱體和前攝影蓋,在箱體頂部設有移動式光源盒,在箱體底部設有LED脫影板,LED脫影板放置在底板上;移動式光源盒包括上蓋,上蓋內設有光源,上蓋部設有磨沙透光片,磨沙透光片將光源封閉在上蓋內;所述LED脫影

壓縮模式圖樣重疊檢測方法與裝置與流程

本發明涉及通信領域,特別涉及一種壓縮模式圖樣重疊檢測方法與裝置。背景技術:在寬帶碼分多址(WCDMA,WidebandCodeDivisionMultipleAccess)系統頻分復用(FDD,FrequencyDivisionDuplex)模式下,為了進行異頻硬切換、FDD到時分復用(TDD,Ti

個性化檯曆的製作方法

專利名稱::個性化檯曆的製作方法技術領域::本實用新型涉及一種檯曆,尤其涉及一種既顯示月曆、又能插入照片的個性化檯曆,屬於生活文化藝術用品領域。背景技術::公知的立式檯曆每頁皆由月曆和畫面兩部分構成,這兩部分都是事先印刷好,固定而不能更換的。畫面或為風景,或為模特、明星。功能單一局限性較大。特別是畫

一種實現縮放的視頻解碼方法

專利名稱:一種實現縮放的視頻解碼方法技術領域:本發明涉及視頻信號處理領域,特別是一種實現縮放的視頻解碼方法。背景技術: Mpeg標準是由運動圖像專家組(Moving Picture Expert Group,MPEG)開發的用於視頻和音頻壓縮的一系列演進的標準。按照Mpeg標準,視頻圖像壓縮編碼後包

基於加熱模壓的纖維增強PBT複合材料成型工藝的製作方法

本發明涉及一種基於加熱模壓的纖維增強pbt複合材料成型工藝。背景技術:熱塑性複合材料與傳統熱固性複合材料相比其具有較好的韌性和抗衝擊性能,此外其還具有可回收利用等優點。熱塑性塑料在液態時流動能力差,使得其與纖維結合浸潤困難。環狀對苯二甲酸丁二醇酯(cbt)是一種環狀預聚物,該材料力學性能差不適合做纖

一種pe滾塑儲槽的製作方法

專利名稱:一種pe滾塑儲槽的製作方法技術領域:一種PE滾塑儲槽一、 技術領域 本實用新型涉及一種PE滾塑儲槽,主要用於化工、染料、醫藥、農藥、冶金、稀土、機械、電子、電力、環保、紡織、釀造、釀造、食品、給水、排水等行業儲存液體使用。二、 背景技術 目前,化工液體耐腐蝕貯運設備,普遍使用傳統的玻璃鋼容

釘的製作方法

專利名稱:釘的製作方法技術領域:本實用新型涉及一種釘,尤其涉及一種可提供方便拔除的鐵(鋼)釘。背景技術:考慮到廢木材回收後再加工利用作業的方便性與安全性,根據環保規定,廢木材的回收是必須將釘於廢木材上的鐵(鋼)釘拔除。如圖1、圖2所示,目前用以釘入木材的鐵(鋼)釘10主要是在一釘體11的一端形成一尖

直流氧噴裝置的製作方法

專利名稱:直流氧噴裝置的製作方法技術領域:本實用新型涉及ー種醫療器械,具體地說是ー種直流氧噴裝置。背景技術:臨床上的放療過程極易造成患者的局部皮膚損傷和炎症,被稱為「放射性皮炎」。目前對於放射性皮炎的主要治療措施是塗抹藥膏,而放射性皮炎患者多伴有局部疼痛,對於止痛,多是通過ロ服或靜脈注射進行止痛治療

新型熱網閥門操作手輪的製作方法

專利名稱:新型熱網閥門操作手輪的製作方法技術領域:新型熱網閥門操作手輪技術領域:本實用新型涉及一種新型熱網閥門操作手輪,屬於機械領域。背景技術::閥門作為流體控制裝置應用廣泛,手輪傳動的閥門使用比例佔90%以上。國家標準中提及手輪所起作用為傳動功能,不作為閥門的運輸、起吊裝置,不承受軸向力。現有閥門

用來自動讀取管狀容器所載識別碼的裝置的製作方法

專利名稱:用來自動讀取管狀容器所載識別碼的裝置的製作方法背景技術:1-本發明所屬領域本發明涉及一種用來自動讀取管狀容器所載識別碼的裝置,其中的管狀容器被放在循環於配送鏈上的文檔匣或託架裝置中。本發明特別適用於,然而並非僅僅專用於,對引入自動分析系統的血液樣本試管之類的自動識別。本發明還涉及專為實現讀