码迷,mamicode.com
首页 > 其他好文 > 详细

hybrid

时间:2019-11-03 19:58:13      阅读:79      评论:0      收藏:0      [点我收藏+]

标签:pos   string   func   ret   post   页面   alert   pre   java   

hybrid本质:

在原生app中,使用webview作为容器,承载一个web页面。

jsbridge:

一座用javascript链接的桥,链接native和web,使native中的代码可以访问web中的javascript代码,使web可以访问native中的原生代码。

http-server、anywhere:

提供访问地址给Android Studio

web调用android原生代码:

window.AndroidJSBridge.function()     ---括号可直接传参

web调用ios原生代码:

window.webkit.messageHandles.function --不能直接传参

window.webkit.messageHandles.function.postMessage()   --通过postMessage(),括号传参

let obj={ msg:‘window调用ios方法‘};
window.webkit.messageHandles.function.postMessage(obj);
//ios回调web方法
window.onFunctionIOS=function(str){
  alert(str);
  return "ios回调web方法"
}

android与android通讯对比

1、调用方法不同

web调用android可以改变window.AndroidJSBridge 中的AndroidJSBridge,ios只能使用window.webkit.

2、传入参数的方法不同

web调用android可以直接在window.AndroidJSBridge.function()括号中传入参数,ios只能通过window.webkit.messageHandles.function.postMessage()中的postMessage()传入参数.

3、传入参数的类型不同

web调用android只能传入基本数据类型,不能传入引用数据类型,object只能使用JSON.stringify转为字符串后传入,而web调用iso可以传入引用数据类型.

4、接受windos回调不同

android可以直接接受web传入的回调,ios不能直接接受.

 

hybrid

标签:pos   string   func   ret   post   页面   alert   pre   java   

原文地址:https://www.cnblogs.com/uimeigui/p/11437546.html

(0)
(0)
   
举报
评论 一句话评论(0
登录后才能评论!
© 2014 mamicode.com 版权所有  联系我们:gaon5@hotmail.com
迷上了代码!