技术总结一、实名认证页面(RealNameAuthentication.html)1、摄像头拍照,前端不好解决:使用原生代码解决。进入拍摄界面,js调用的函数如下(该函数包含网络请求)if(response.meta.code===0&&okCallback){okCallback(response.meta,response.data)}elseif(failCallback){failCallback(response.meta,response.data)}}varfailed=function(msg){如果(errorCallback)errorCallback(味精);}varcallbackId=plus.bridge.callbackId(成功,失败);plus.bridge.exec('ApiClient','idCardPut',[callbackId,'/user/auth/idcard/upload','',ruid]);}2.PICC保险购买页面(PersonalInsurancePay.html)1.如果通过支付链接打开的页面还未支付,无法返回人保投保页面。解决方法:使用原生导航栏打开页面(点击导航栏按钮返回)payWebview=mui.openWindow({id:'pay_page',url:'LoadingPage.html',styles:{titleNView:{style:'透明',backgroundColor:'#FFFFFF',titleText:'保单付款',titleColor:'#000000',autoBackButton:true,}}});2、支付接口回调响应时间过长(一分钟左右),使用该方式用户体验差。查询方法,设置一个定时器,支付链接页面加载完成后调用定时器,每2s检查一次保单的支付状态(注意:关闭页面时,最后一次支付状态查询完成后开启定时器off)//设置定时器,点击支付按钮后轮询支付状态functionpollingCheckPay(){setTimeout(function(){getInfoOfPolicy(gGetInfor.policy_number,checkPayCallback);},2000);}3.mui1的一些陷阱.提示框效果不好,应该是代码最后没有加'div'//可能你是这样写的mui.alert(msg,"Prompt",['OK'],function(){})//添加'div'只是样式,这个参数是指是否使用h5绘制的对话框mui.alert(msg,"prompt",['OK'],function(){},'div')2.mui的确认框确认usemui.confirm(getConfirmMsg(val),"请确认身份信息",["Incorrectinformation",'Confirm'],function(e){if(e.index===0){take_photo(ruid);}否则我f(e.index===1){mui.showLoading("正在加载..","div");infoConfirm("id_card",ruid,buid);}},"div")3.mui预加载目标页面不可用mui.openWindow传参mui.init({preloadPages:[{id:'PersonalInfo',url:'PersonalInfo.html',}]});mui.openWindow({id:'PersonalInfo',url:'PersonalInfo.html',extras:{name:'小明'}});4.适配因为需要适配Android4.4(Android4.4是谷歌2013年11月1日发布的手机操作系统),而6.0之前的webview版本不支持ES6,所以使用es5进行纯原生开发。项目收获1.与开发团队成员的即时沟通非常重要。沟通的效率将决定你自己对项目的理解和开发的效率。良好的沟通可以加快开发速度并减少代码更改量;2.项目开发前的准备工作非常重要。一开始没有梳理整个页面流程,导致一开始效率低下,开发乏力。提醒大家一开始就开会,理清页面之间的逻辑;3.混合开发,一开始不清楚要连接别人的任务和自己的任务相关(比如图片页面),一开始应该问问和你任务相关的人在做什么,他们在做什么负责;4、抓好测试上线很重要。您自己的页面可能存在一些问题。当你想测试时,你应该专注于测试。如果屏蔽了测试过程,应该把自己的问题代码注释掉,或者先把自己有问题的功能砍掉,这样整个项目过程才能正常测试。并正常上网;
