全网整合营销服务商

电脑端+手机端+微信端=数据同步管理

免费咨询热线:400-708-3566

JS调用Android、Ios原生控件

在上一篇博客(详解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");
}
//有参调用--json
function 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");
}
//有参调用--json
function 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用户的使用体验,并且处理函数不会影响到方法的调用。

好了到这里就和大家聊完了,当然如果所述与您的理解有偏差,还望指点一二。

以上就是本文的全部内容,希望本文的内容对大家的学习或者工作能带来一定的帮助,同时也希望多多支持!


# JS  # 调用  # 控件  # 三步搞定:Vue.js调用Android原生操作  # DCloud的native.js调用系统分享实例Android版代码  # Android中实现WebView和JavaScript的互相调用详解  # Android WebView的使用方法及与JS 相互调用  # Android编程使用WebView实现与Javascript交互的方法【相互调用参数、传值】  # Android总结之WebView与Javascript交互(互相调用)  # Android与JS之间跨平台异步调用实例详解  # Android webview和js互相调用实现方法  # Android WebView使用方法详解 附js交互调用方法  # Android与JS相互调用的方法  # 看一下  # 我们可以  # 的是  # 您的  # 好了  # 则是  # 看完  # 我所  # 认识到  # 影响到  # 你一定  # 我们一起  # 不带  # 在上  # 所述  # 聊了  # 先看  # 还望  # 中你  # 第二点 


相关文章: c# 服务器GC和工作站GC的区别和设置  宝塔面板创建网站无法访问?如何快速排查修复?  成都网站制作公司哪家好,四川省职工服务网是做什么用?  如何在Windows环境下新建FTP站点并设置权限?  制作网站的基本流程,设计网站的软件是什么?  儿童网站界面设计图片,中国少年儿童教育网站-怎么去注册?  微信小程序 五星评分(包括半颗星评分)实例代码  建站主机助手选型指南:2025年热门推荐与高效部署技巧  香港服务器选型指南:免备案配置与高效建站方案解析  专业网站制作服务公司,有哪些网站可以免费发布招聘信息?  高防服务器租用首荐平台,企业级优惠套餐快速部署  如何通过VPS搭建网站快速盈利?  宝塔建站无法访问?如何排查配置与端口问题?  购物网站制作公司有哪些,哪个购物网站比较好?  如何在Golang中使用replace替换模块_指定本地或远程路径  制作宣传网站的软件,小红书可以宣传网站吗?  如何选择香港主机高效搭建外贸独立站?  高防服务器:AI智能防御DDoS攻击与数据安全保障  品牌网站制作公司有哪些,买正品品牌一般去哪个网站买?  如何在云主机上快速搭建多站点网站?  已有域名如何免费搭建网站?  免费的流程图制作网站有哪些,2025年教师初级职称申报网上流程?  制作网站外包平台,自动化接单网站有哪些?  宝塔新建站点报错如何解决?  香港服务器网站测试全流程:性能评估、SEO加载与移动适配优化  如何快速搭建响应式可视化网站?  在线制作视频的网站有哪些,电脑如何制作视频短片?  建站之星如何实现网站加密操作?  如何快速搭建安全的FTP站点?  如何构建满足综合性能需求的优质建站方案?  胶州企业网站制作公司,青岛石头网络科技有限公司怎么样?  如何在云指建站中生成FTP站点?  如何基于PHP生成高效IDC网络公司建站源码?  广州网站设计制作一条龙,广州巨网网络科技有限公司是干什么的?  开封网站制作公司,网络用语开封是什么意思?  如何用VPS主机快速搭建个人网站?  建站之星微信建站一键生成小程序+多端营销系统  厦门模型网站设计制作公司,厦门航空飞机模型掉色怎么办?  如何在万网ECS上快速搭建专属网站?  ,南京靠谱的征婚网站?  成都品牌网站制作公司,成都营业执照年报网上怎么办理?  建站VPS能否同时实现高效与安全翻墙?  如何快速使用云服务器搭建个人网站?  怎么将XML数据可视化 D3.js加载XML  无锡营销型网站制作公司,无锡网选车牌流程?  如何在Windows服务器上快速搭建网站?  如何在宝塔面板中创建新站点?  网站制作怎么样才能赚钱,用自己的电脑做服务器架设网站有什么利弊,能赚钱吗?  电商网站制作公司有哪些,1688网是什么意思?  建站之星北京办公室:智能建站系统与小程序生成方案解析 

您的项目需求

*请认真填写需求信息,我们会在24小时内与您取得联系。