新四季網

一種移動APP與Web頁面通訊方法及系統與流程

2023-10-09 07:05:24 2


本發明屬於移動app的技術領域,具體地涉及一種移動app與web頁面通訊方法及系統。



背景技術:

由於移動app(即移動終端上的應用軟體)是要區分android、ios等設備的,因此安全限制與通訊方法標準均不一致,這就使得app與web頁面的交互過程非常繁瑣。

目前,app和web的原生api(applicationprogramminginterface,應用程式編程接口)只提供單工調用方法,即「app調用web」或「web調用app」,而且因為這種調用是同步調用,會阻塞線程,影響性能。為了支持複雜業務場景及高性能要求,亟需實現「app與web的全雙工異步通訊」。



技術實現要素:

本發明的技術解決問題是:克服現有技術的不足,提供一種移動app與web頁面通訊方法,其實現了移動app與web頁面的全雙工異步通訊,避免了阻塞線程,不會影響行動裝置的性能。

本發明的技術解決方案是:這種移動app與web頁面通訊方法,包括以下步驟:

(1)包裝原生api,使其實現半雙工調用;

(2)拒絕回調,取消同步阻塞;

(3)自定義通訊流水號;

(4)收到異步返回結果時,根據指令類型分別處理;

(5)如果有匹配的流水號,則確定這個消息是app曾經發送的某個指令的異步返回的結果,跳轉到步驟(4)。

本發明通過包裝原生api,使其實現半雙工調用,拒絕回調,取消同步阻塞,自定義通訊流水號,收到異步返回結果時,根據指令類型分別處理,如果有匹配的流水號,則確定這個消息是app曾經發送的某個指令的異步返回的結果而進行處理,從而實現了移動app與web頁面的全雙工異步通訊,避免了阻塞線程,不會影響行動裝置的性能。

還提供了採用這種方法的系統,其包括:

包裝模塊,其配置來包裝原生api,使其實現半雙工調用;

設置取消模塊,其配置來拒絕回調,取消同步阻塞;

定義流水號模塊,其配置來自定義通訊流水號;

處理模塊,其配置來收到異步返回結果時,根據指令類型分別處理;

並且如果有匹配的流水號,則確定這個消息是app曾經發送的某個指令的異步返回的結果,根據指令類型分別處理。

附圖說明

圖1示出了根據本發明的移動app與web頁面通訊方法的流程圖。

具體實施方式

如圖1所示,這種移動app與web頁面通訊方法,包括以下步驟:

(1)包裝原生api,使其實現半雙工調用;

(2)拒絕回調,取消同步阻塞;

(3)自定義通訊流水號;

(4)收到異步返回結果時,根據指令類型分別處理;

(5)如果有匹配的流水號,則確定這個消息是app曾經發送的某個指令的異步返回的結果,跳轉到步驟(4)。

本發明通過包裝原生api,使其實現半雙工調用,拒絕回調,取消同步阻塞,自定義通訊流水號,收到異步返回結果時,根據指令類型分別處理,如果有匹配的流水號,則確定這個消息是app曾經發送的某個指令的異步返回的結果而進行處理,從而實現了移動app與web頁面的全雙工異步通訊,避免了阻塞線程,不會影響行動裝置的性能。

另外,該方法包括移動app端處理方法和web頁面端處理方法。

另外,所述移動app端處理方法包括向web發消息和接收來自web的消息;

向web發消息包括以下步驟:

(a1)將消息對象轉為消息字符串;

(a2)為消息分配通訊流水號;

(a3)獲取app內嵌的web瀏覽器句柄;

(a4)通過web瀏覽器句柄獲取通訊api;

(a5)將通訊流水號、消息字符串傳給web頁面;

接收來自web的消息包括以下步驟:

(b1)註冊接收web消息的方法;

(b2)接收來自web的消息字符串;

(b3)將消息字符串解析成json對象;

(b4)分發並處理消息;

(b5)如果找到了匹配的消息流水號,則將此消息當作異步處理返回

結果來處理。

另外,所述web頁面端處理方法包括接收來自app的消息和向app發消息;

接收來自app的消息包括以下步驟:

(c1)根據約定創建方法接收來自app的消息;

(c2)接收消息字符串;

(c3)記錄消息流水號;

(c4)將消息字符串解析成消息對象;

(c5)分發並處理消息;

向app發消息包括以下步驟:

(d1)創建向app發送消息的方法;

(d2)獲取消息對象;

(d3)將消息對象序列化為消息字符串;

(d4)發送消息字符串;

(d5)如果有相關的消息流水號,將消息流水號協同消息字符串一起發送。

本領域普通技術人員可以理解,實現上述實施例方法中的全部或部分步驟是可以通過程序來指令相關的硬體來完成,所述的程序可以存儲於一計算機可讀取存儲介質中,該程序在執行時,包括上述實施例方法的各步驟,而所述的存儲介質可以是:rom/ram、磁碟、光碟、存儲卡等。因此,與本發明的方法相對應的,本發明還同時包括一種移動app與web頁面通訊系統,該系統通常以與方法各步驟相對應的功能模塊的形式表示。使用該方法的系統,其包括:

包裝模塊,其配置來包裝原生api,使其實現半雙工調用;

設置取消模塊,其配置來拒絕回調,取消同步阻塞;

定義流水號模塊,其配置來自定義通訊流水號;

處理模塊,其配置來收到異步返回結果時,根據指令類型分別處理;並且如果有匹配的流水號,則確定這個消息是app曾經發送的某個指令的異步返回的結果,根據指令類型分別處理。

另外,該系統包括移動app端處理單元和web頁面端處理單元。

另外,所述移動app端處理單元執行以下步驟:

向web發消息包括以下步驟:

(a1)將消息對象轉為消息字符串;

(a2)為消息分配通訊流水號;

(a3)獲取app內嵌的web瀏覽器句柄;

(a4)通過web瀏覽器句柄獲取通訊api;

(a5)將通訊流水號、消息字符串傳給web頁面;

接收來自web的消息包括以下步驟:

(b1)註冊接收web消息的方法;

(b2)接收來自web的消息字符串;

(b3)將消息字符串解析成json對象;

(b4)分發並處理消息;

(b5)如果找到了匹配的消息流水號,則將此消息當作異步處理返回結果來處理。

另外,所述web頁面端處理單元執行以下步驟:

(c1)根據約定創建方法接收來自app的消息;

(c2)接收消息字符串;

(c3)記錄消息流水號;

(c4)將消息字符串解析成消息對象;

(c5)分發並處理消息;

向app發消息包括以下步驟:

(d1)創建向app發送消息的方法;

(d2)獲取消息對象;

(d3)將消息對象序列化為消息字符串;

(d4)發送消息字符串;

(d5)如果有相關的消息流水號,將消息流水號協同消息字符串一起發送。

以上所述,僅是本發明的較佳實施例,並非對本發明作任何形式上的限制,凡是依據本發明的技術實質對以上實施例所作的任何簡單修改、等同變化與修飾,均仍屬本發明技術方案的保護範圍。

同类文章

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

一種新型多功能組合攝影箱的製作方法【專利摘要】本實用新型公開了一種新型多功能組合攝影箱,包括敞開式箱體和前攝影蓋,在箱體頂部設有移動式光源盒,在箱體底部設有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-本發明所屬領域本發明涉及一種用來自動讀取管狀容器所載識別碼的裝置,其中的管狀容器被放在循環於配送鏈上的文檔匣或託架裝置中。本發明特別適用於,然而並非僅僅專用於,對引入自動分析系統的血液樣本試管之類的自動識別。本發明還涉及專為實現讀