国产探花免费观看_亚洲丰满少妇自慰呻吟_97日韩有码在线_资源在线日韩欧美_一区二区精品毛片,辰东完美世界有声小说,欢乐颂第一季,yy玄幻小说排行榜完本

首頁 > 編程 > JavaScript > 正文

JS調用Android、Ios原生控件

2019-11-19 18:05:38
字體:
來源:轉載
供稿:網友

在上一篇博客(詳解JS與APP原生控件交互)中已經和大家聊了,關于JS與Android、Ios原生控件之間相互通信的詳細代碼實現,今天我們一起聊一下JS調用Android、Ios通信的相同點和不同點,以便幫助我們在進行混合式開發時,提高代碼質量,實現兩者在網頁端代碼的統一。

首先我們先看一下Ios調用JS的方法實現:

//無參調用function SwiftCallJs1(){}//有參調用function SwiftCallJs2(name, message){}

緊接著我們看一下Android調用JS的方法實現:

//無參調用function AndroidCallJs1(){}//有參調用function AndroidCallJs2(data){}

從上面的代碼中你是否發現,Android與Ios調用JS時,JS處理函數兩者在無參調用時是相通的。有參調用不同點是Ios是一對一直接傳遞,Android則是字符串傳遞,當然我們可以通過在Android和Ios端統一傳參使用JSON格式,JS支持JSON解析,從而實現兩個平臺在有參方法調用上的統一。

看完上面的Ios與Android調用JS,下面我們看一下JS調用Android與Ios原生通信的異同點。

首先我們看一下JS調用Android的方法實現:

//無參調用function callNull(){ android.CallNull(); }//有參調用function callMessage(){ android.CallMessage("msg");}//有參調用--jsonfunction callJson(){ var json = "[{/"name/":/"滿藝網/",/"url/":/"www.manyiaby.com/"}]"; android.CallJson(json);}

接下來我們看一下JS調用Ios的方法實現:

//一:無前綴調用//無參調用function test1(){ Test1();}//有參調用function test2(){ Test2("滿藝網","www.manyiaby.com");}//二:有前綴調用//無參調用--帶返回操作結果處理function callSystem(){ Ios.CallSystem();}//操作結果處理函數function JSCallNullIosResult(){}//有參調用function callWithMsg(){ Ios.CallWithMsg("滿藝網","www.manyiaby.com");}//有參調用--jsonfunction callWithJson(){ var json = "{/"name/":/"滿藝網/",/"url/":/"www.manyiaby.com/"}"; Ios.CallWithJson(json);}//有參調用--帶返回結果處理function callWithJsonResult(){ var json = "{/"name/":/"滿藝網/",/"url/":/"www.manyiaby.com/"}"; Ios.CallWithJsonResult(json);}function JSCallJsonIosResult(data){ alert("name:"+data["name"]); }

看到這里你一定發現了不同點,1、Android沒有不帶前綴的方法調用,2、Android沒有方法調用后的操作結果返回處理邏輯。對于第一點,就目前我所認識到的是原生沒有通過具體的實現邏輯,不過這個點不影響我們的開發,因為Ios是支持前綴方法調用的。對于第二點,我的理解是對于返回處理函數,我們可以在開發的添加上去,從而提高Ios用戶的使用體驗,并且處理函數不會影響到方法的調用。

好了到這里就和大家聊完了,當然如果所述與您的理解有偏差,還望指點一二。

以上就是本文的全部內容,希望本文的內容對大家的學習或者工作能帶來一定的幫助,同時也希望多多支持武林網!

發表評論 共有條評論
用戶名: 密碼:
驗證碼: 匿名發表
主站蜘蛛池模板: 井研县| 嘉鱼县| 塔城市| 景泰县| 武平县| 汨罗市| 白银市| 浏阳市| 盐亭县| 岳普湖县| 湘乡市| 盐城市| 巢湖市| 莱芜市| 南平市| 锡林郭勒盟| 三河市| 汶上县| 丰台区| 延安市| 阳谷县| 关岭| 莲花县| 沾化县| 曲阜市| 肇庆市| 清涧县| 灵武市| 玛纳斯县| 株洲县| 方城县| 化隆| 巴东县| 乃东县| 余姚市| 福贡县| 乌海市| 滨海县| 辽宁省| 兰溪市| 滨海县|