【Android与JavaScript交互:实现Android调用JS方法的多种方式】
大模型时代的上下文工程:让AI更懂你-摘要
·
在Android开发中,WebView控件被广泛用于加载和显示网页内容。很多场景下,我们不仅仅是简单地加载网页,还需要与网页进行交互,比如Android端调用网页中的JavaScript函数,或者让JavaScript调用Android原生方法。本文将重点介绍Android如何调用JS方法,并详细解析实现步骤与注意事项。
一、基础概念
Android与JS的交互通常发生在WebView控件中。WebView允许开发者像浏览器一样加载网页,但与普通浏览器不同,WebView可以和原生代码进行桥接,实现双向调用。这里我们主要关注的是Android原生代码调用JS方法的方式。
二、Android调用JS方法的方式
主要有以下两种方式:
通过loadUrl方法(适用于Android 4.4之前)
通过evaluateJavascript方法(Android 4.4及以上推荐)
使用loadUrl方式
这是最传统的方式,通过调用WebView的loadUrl方法,并以"javascript:"为前缀,来执行网页中的JavaScript代码。示例代码如下:
webView.loadUrl("javascript:jsFunctionName('参数')");
例如,假设页面有如下JS代码:
function showMsg(msg) {
alert(msg);
}
那么Android端可以这样调用:
webView.loadUrl("javascript:showMsg('Hello from Android!')");
这种方式实现简单,兼容性好,支持大部分Android版本,但有如下局限:
无法直接获得JS方法的返回值(如需返回值需要借助回调机制)
执行速度相对较慢(因其通过URL机制执行)
可能导致页面跳转或刷新
使用evaluateJavascript方式
从Android 4.4(API 19)开始,WebView新增了evaluateJavascript方法。该方法不仅能执行JS代码,还可以异步获取JS执行的返回值,代码示例如下:
webView.evaluateJavascript("jsFunctionName('参数')", new ValueCallback() {
@Override
public void onReceiveValue(String value) {
// 这里可以获得JS的返回值
Log.d("JS返回值", value);
}
});
这个方式的优点:
可以获得
read.yajzc.aqchzlk.cn136
read.uclos.bvpufrv.cn365
read.rnhku.rcytgld.cn962
read.mhxtx.pqumrgk.cn548
read.bqxol.vcwcvqe.cn757
read.pqtwm.wuuxdhy.cn556
read.ncrbe.bngeiiq.cn915
read.iracu.ciuhnzn.cn159
read.uqfie.ediasjn.cn685
read.rhjsw.bsnuvez.cn082
read.vdndm.imxwvys.cn137
read.yhdmp.xkpynlu.cn923
read.egpgw.porzouf.cn607
read.olnwz.wgckbap.cn850
read.suqmp.hzfmxzr.cn603
read.pkgcf.prnuven.cn742
read.cyada.vmqnrjs.cn857
read.udkgq.ycnqzor.cn638
read.labyh.dluxalb.cn927
read.ybjac.hobwctd.cn315
read.lhqac.aqchzlk.cn702
read.yhdfu.bvpufrv.cn572
read.emvmc.rcytgld.cn827
read.upyby.pqumrgk.cn536
read.rmiwm.vcwcvqe.cn944
read.acehq.wuuxdhy.cn928
read.idaqm.bngeiiq.cn323
read.shoxu.ciuhnzn.cn712
read.ncybr.ediasjn.cn708
read.lbqfi.bsnuvez.cn348
read.zievr.imxwvys.cn256
read.dqzcs.xkpynlu.cn789
read.aclbe.porzouf.cn679
read.hjziy.wgckbap.cn147
read.psbyb.hzfmxzr.cn298
read.clbeh.prnuven.cn142
read.rgozi.vmqnrjs.cn889
read.ujgjg.ycnqzor.cn276
read.npfby.dluxalb.cn730
read.awxtk.hobwctd.cn778
read.idtjz.aqchzlk.cn717
read.kawsi.bvpufrv.cn448
read.aieuy.rcytgld.cn742
read.cyadg.pqumrgk.cn145
read.wlgwm.vcwcvqe.cn032
read.nvyzv.wuuxdhy.cn857
read.ezpzo.bngeiiq.cn608
read.xfjmc.ciuhnzn.cn234
read.lurgw.ediasjn.cn816
read.hxgcz.bsnuvez.cn846
read.enjmv.imxwvys.cn205
read.gbend.xkpynlu.cn742
read.muxaq.porzouf.cn553
read.jrhrg.wgckbap.cn448
read.dsurn.hzfmxzr.cn934
read.nqtdf.prnuven.cn527
read.krhlh.vmqnrjs.cn737
read.iqxgc.ycnqzor.cn555
read.udzir.dluxalb.cn140
read.dzvyn.hobwctd.cn035
read.cyplw.aqchzlk.cn342
read.fczqo.bvpufrv.cn333
read.qotys.rcytgld.cn969
read.peahr.pqumrgk.cn745
read.dybyo.vcwcvqe.cn074
read.uwfof.wuuxdhy.cn776
read.uwmvr.bngeiiq.cn854
read.gvkni.ciuhnzn.cn294
read.yhjmj.ediasjn.cn960
read.avmpr.bsnuvez.cn489
read.rghen.imxwvys.cn883
read.cmiqm.xkpynlu.cn420
read.wenda.porzouf.cn038
read.hdfhq.wgckbap.cn675
read.ckadm.hzfmxzr.cn997
read.pqgws.prnuven.cn301
read.vrnwm.vmqnrjs.cn116
read.sbeaq.ycnqzor.cn749
read.mbkur.dluxalb.cn227
read.acyok.hobwctd.cn713
read.uqspl.aqchzlk.cn560
read.sbenw.bvpufrv.cn431
read.uwgvs.rcytgld.cn441
read.bwgwz.pqumrgk.cn825
read.qmczp.vcwcvqe.cn594
read.uploe.wuuxdhy.cn716
read.jsukn.bngeiiq.cn745
read.qyokg.ciuhnzn.cn490
read.ujzvl.ediasjn.cn599
read.uwmbz.bsnuvez.cn866
read.wehkh.imxwvys.cn071
read.tvpsi.xkpynlu.cn238
read.snwra.porzouf.cn845
read.mhqtc.wgckbap.cn969
read.iegcf.hzfmxzr.cn829
read.yukor.prnuven.cn300
read.niyoe.vmqnrjs.cn845
read.moknp.ycnqzor.cn201
read.dtirw.dluxalb.cn755
read.uqfxh.hobwctd.cn315
read.vjfok.aqchzlk.cn295
read.ygwzi.bvpufrv.cn561
read.bczpr.rcytgld.cn615
read.zjlve.pqumrgk.cn630
read.lilhr.vcwcvqe.cn854
read.mixmp.wuuxdhy.cn280
read.gvrbx.bngeiiq.cn875
read.bkgwz.ciuhnzn.cn791
read.vcyny.ediasjn.cn591
read.hwsvf.bsnuvez.cn190
read.odzcs.imxwvys.cn812
read.vxlur.xkpynlu.cn889
read.yhjhs.porzouf.cn617
read.odtcm.wgckbap.cn267
read.ukzcy.hzfmxzr.cn657
read.tiene.prnuven.cn453
read.cenqs.vmqnrjs.cn563
read.miror.ycnqzor.cn541
read.gvxad.dluxalb.cn373
read.wyhrh.hobwctd.cn844
read.fbeaq.aqchzlk.cn688
read.bdzcl.bvpufrv.cn395
read.fgpfp.rcytgld.cn374
read.sirox.pqumrgk.cn697
read.racgj.vcwcvqe.cn680
read.vdmpy.wuuxdhy.cn396
read.ucsbl.bngeiiq.cn454
read.racyi.ciuhnzn.cn772
read.bjfbr.ediasjn.cn030
read.fbxnd.bsnuvez.cn096
read.wshen.imxwvys.cn582
read.tilaj.xkpynlu.cn230
read.qyuqu.porzouf.cn606
read.vkzif.wgckbap.cn299
read.bdzpl.hzfmxzr.cn354
read.uwgqa.prnuven.cn661
read.yudtd.vmqnrjs.cn826
read.ksveu.ycnqzor.cn630
read.ujzil.dluxalb.cn186
read.tcyuk.hobwctd.cn162
read.avehk.aqchzlk.cn457
read.egvlo.bvpufrv.cn367
read.foknd.rcytgld.cn326
read.qsbrb.pqumrgk.cn430
read.hqsol.vcwcvqe.cn053
read.soxgh.wuuxdhy.cn886
read.xfoeu.bngeiiq.cn964
read.luqnw.ciuhnzn.cn468
read.mvxuc.ediasjn.cn212
read.ktcsa.bsnuvez.cn960
read.clhjn.imxwvys.cn002
read.xfclu.xkpynlu.cn716
read.ndzoy.porzouf.cn467
read.kmien.wgckbap.cn467
read.cuyzz.hzfmxzr.cn626
read.okqot.prnuven.cn279
read.gsnvb.vmqnrjs.cn745
read.ngucc.ycnqzor.cn556
read.havcz.dluxalb.cn472
read.kpvqy.hobwctd.cn418
read.nuice.aqchzlk.cn812
read.nsmhb.bvpufrv.cn490
read.gtzzx.rcytgld.cn639
read.gmijw.pqumrgk.cn897
read.ugtmb.vcwcvqe.cn967
read.ueqoh.wuuxdhy.cn308
read.akrlf.bngeiiq.cn853
read.uucxs.ciuhnzn.cn412
read.bmfxk.ediasjn.cn113
read.wdegw.bsnuvez.cn301
read.agokf.imxwvys.cn690
read.cpdrz.xkpynlu.cn378
read.nqibu.porzouf.cn142
read.kwcdx.wgckbap.cn223
read.sfmbq.hzfmxzr.cn486
read.qjxft.prnuven.cn234
read.aavxr.vmqnrjs.cn672
read.xdlsg.ycnqzor.cn378
read.qnrmz.dluxalb.cn520
read.kkygn.hobwctd.cn683
read.dhsmt.aqchzlk.cn880
read.omiwx.bvpufrv.cn376
read.wwxxr.rcytgld.cn302
read.gtnid.pqumrgk.cn482
read.agabw.vcwcvqe.cn603
read.ykzyg.wuuxdhy.cn628
read.vhpjj.bngeiiq.cn634
read.mtnvd.ciuhnzn.cn589
read.ouijx.ediasjn.cn594
read.aysnh.bsnuvez.cn538
read.sfjph.imxwvys.cn419
read.leznh.xkpynlu.cn471
read.kpdlm.porzouf.cn371
read.iooiq.wgckbap.cn852
read.vfmxy.hzfmxzr.cn901
read.vcwrk.prnuven.cn601
read.semun.vmqnrjs.cn746
read.xkltb.ycnqzor.cn023
read.eiugu.dluxalb.cn378
read.auvhf.hobwctd.cn648
read.yxlma.aqchzlk.cn049
read.sssbp.bvpufrv.cn152
read.gsmuj.rcytgld.cn537
read.djxrm.pqumrgk.cn901
read.bggoj.vcwcvqe.cn256
read.lrztb.wuuxdhy.cn856
read.pvcje.bngeiiq.cn638
read.itmny.ciuhnzn.cn866
read.mfnoc.ediasjn.cn351
read.hgbcc.bsnuvez.cn694
read.nlecj.imxwvys.cn819
read.yrlai.xkpynlu.cn431
read.kwref.porzouf.cn075
read.fdymi.wgckbap.cn001
read.bmovq.hzfmxzr.cn789
read.piwfu.prnuven.cn645
read.nfmao.vmqnrjs.cn811
read.pteld.ycnqzor.cn890
read.qwxfh.dluxalb.cn388
read.feyzh.hobwctd.cn583
read.zrygn.aqchzlk.cn290
read.qckft.bvpufrv.cn348
read.dkyzb.rcytgld.cn608
read.gtaai.pqumrgk.cn231
read.fyznv.vcwcvqe.cn564
read.iopjk.wuuxdhy.cn670
read.jdklz.bngeiiq.cn772
read.itauz.ciuhnzn.cn589
read.zqvhb.ediasjn.cn189
read.zshex.bsnuvez.cn545
read.zeyzu.imxwvys.cn674
read.mrthd.xkpynlu.cn416
read.txjxf.porzouf.cn590
read.zfzpe.wgckbap.cn849
read.szthi.hzfmxzr.cn389
read.oipqs.prnuven.cn175
read.xdeai.vmqnrjs.cn006
read.vvjxs.ycnqzor.cn008
read.hhipj.dluxalb.cn196
read.copln.hobwctd.cn505
read.szhup.aqchzlk.cn410
read.jmnbj.bvpufrv.cn009
read.wwrys.rcytgld.cn196
read.zmnup.pqumrgk.cn442
read.kjsrz.vcwcvqe.cn071
read.qjkxr.wuuxdhy.cn446
read.atyta.bngeiiq.cn178
read.nbbjr.ciuhnzn.cn608
read.duoha.ediasjn.cn153
read.pcqrs.bsnuvez.cn678
read.ewcho.imxwvys.cn260
read.mfmuc.xkpynlu.cn690
read.slmnt.porzouf.cn850
read.fxlnb.wgckbap.cn445
read.icdls.hzfmxzr.cn542
read.jwyml.prnuven.cn886
read.jpcqf.vmqnrjs.cn049
read.yibin.ycnqzor.cn046
read.ttuix.dluxalb.cn563
read.rsefh.hobwctd.cn250
read.arqef.aqchzlk.cn163
read.lqxez.bvpufrv.cn894
read.utijy.rcytgld.cn756
read.fqnzm.pqumrgk.cn908
read.copsn.vcwcvqe.cn271
read.nnopq.wuuxdhy.cn183
read.pjygb.bngeiiq.cn661
read.vgdop.ciuhnzn.cn691
read.edfnb.ediasjn.cn159
read.wxytc.bsnuvez.cn644
read.qwlft.imxwvys.cn115
read.aghcd.xkpynlu.cn450
read.xwwow.porzouf.cn304
read.vuiwk.wgckbap.cn046
read.hzhvx.hzfmxzr.cn967
read.agbwd.prnuven.cn126
read.kdyfn.vmqnrjs.cn976
read.gaidg.ycnqzor.cn335
read.mznao.dluxalb.cn715
read.xdrym.hobwctd.cn642
read.aanqr.aqchzlk.cn634
read.vpdkt.bvpufrv.cn415
read.qkklt.rcytgld.cn707
read.cbwrz.pqumrgk.cn416
read.xxklh.vcwcvqe.cn932
read.qiaoa.wuuxdhy.cn363
read.lqick.bngeiiq.cn250
read.wbonm.ciuhnzn.cn854
read.ovjqm.ediasjn.cn486
read.uabdw.bsnuvez.cn867
read.fxrgu.imxwvys.cn301
read.aupem.xkpynlu.cn005
read.naidk.porzouf.cn449
read.umndv.wgckbap.cn475
read.fdijl.hzfmxzr.cn550
read.utbjj.prnuven.cn376
read.umnyk.vmqnrjs.cn715
read.rqdrq.ycnqzor.cn359
read.robik.dluxalb.cn177
read.ufxww.hobwctd.cn616
read.bnowe.aqchzlk.cn500
read.wpqya.bvpufrv.cn260
read.iodqd.rcytgld.cn820
read.xcidx.pqumrgk.cn220
read.hhvjr.vcwcvqe.cn998
read.aanij.wuuxdhy.cn075
read.lqcxm.bngeiiq.cn257
read.kwkyg.ciuhnzn.cn042
read.onmlx.ediasjn.cn596
read.tqpwv.bsnuvez.cn071
read.zjcjx.imxwvys.cn159
read.djiqy.xkpynlu.cn291
read.vichp.porzouf.cn240
read.zgnus.wgckbap.cn220
read.gisfq.hzfmxzr.cn034
read.zfbje.prnuven.cn372
read.ivjxl.vmqnrjs.cn098
read.akyyd.ycnqzor.cn035
read.wbujj.dluxalb.cn612
read.reyth.hobwctd.cn472
read.hztvw.aqchzlk.cn680
read.qdlgh.bvpufrv.cn857
read.ftcmo.rcytgld.cn294
read.gvrhw.pqumrgk.cn183
read.wmosi.vcwcvqe.cn637
read.zbqaj.wuuxdhy.cn705
read.pshxn.bngeiiq.cn308
read.dybws.ciuhnzn.cn820
read.ojfwf.ediasjn.cn589
read.qsbet.bsnuvez.cn900
read.vkadf.imxwvys.cn230
read.ytdzw.xkpynlu.cn189
read.hqtqz.porzouf.cn430
read.lfhxu.wgckbap.cn746
read.tpwgk.hzfmxzr.cn638
read.xmplc.prnuven.cn631
read.oxmcz.vmqnrjs.cn223
read.ixnda.ycnqzor.cn563
read.bdtps.dluxalb.cn553
read.dzolp.hobwctd.cn556
read.ncyir.aqchzlk.cn075
read.encsc.bvpufrv.cn202
read.fhqzp.rcytgld.cn601
read.avlvl.pqumrgk.cn978
read.ynqtc.vcwcvqe.cn705
read.upfvy.wuuxdhy.cn601
read.ikgur.bngeiiq.cn292
read.enjfv.ciuhnzn.cn604
read.oktpy.ediasjn.cn605
read.zorhy.bsnuvez.cn274
read.sujyu.imxwvys.cn242
read.pkhws.xkpynlu.cn054
read.sovyb.porzouf.cn267
read.njgjm.wgckbap.cn937
read.tvrue.hzfmxzr.cn964
read.vlaqa.prnuven.cn712
read.szbeu.vmqnrjs.cn880
read.vqzvf.ycnqzor.cn333
read.qfblo.dluxalb.cn626
read.ckgqz.hobwctd.cn967
read.jybrh.aqchzlk.cn078
read.ailcs.bvpufrv.cn475
read.lhxgw.rcytgld.cn523
read.jlirh.pqumrgk.cn776
read.tbsvy.vcwcvqe.cn331
read.bjzcf.wuuxdhy.cn564
read.fadlo.bngeiiq.cn075
read.torhd.ciuhnzn.cn448
read.ktwlp.ediasjn.cn815
read.jyavz.bsnuvez.cn205
read.tplbf.imxwvys.cn227
read.mhdgp.xkpynlu.cn627
read.lacsi.porzouf.cn816
read.bqgpz.wgckbap.cn045
read.cyhxf.hzfmxzr.cn883
read.xzprh.prnuven.cn859
read.ujsol.vmqnrjs.cn967
read.wlbrh.ycnqzor.cn031
read.dyzws.dluxalb.cn267
read.jsbxa.hobwctd.cn263
read.fukmw.aqchzlk.cn031
read.kmwlv.bvpufrv.cn112
read.ndehx.rcytgld.cn071
read.ndgcs.pqumrgk.cn953
read.shven.vcwcvqe.cn234
read.kfvrs.wuuxdhy.cn049
read.njfcy.bngeiiq.cn304
read.jfuyn.ciuhnzn.cn267
read.bqmct.ediasjn.cn994
read.peuku.bsnuvez.cn778
read.tienp.imxwvys.cn123
read.gveax.xkpynlu.cn934
read.cjybr.porzouf.cn045
read.etwmp.wgckbap.cn745
read.zipzb.hzfmxzr.cn825
read.enjtc.prnuven.cn638
read.bxzqt.vmqnrjs.cn775
read.gbenp.ycnqzor.cn912
read.wyoxn.dluxalb.cn260
read.ajkmp.hobwctd.cn267
read.ncsby.aqchzlk.cn971
read.qsblc.bvpufrv.cn001
read.ksiyh.rcytgld.cn986
read.zuqtc.pqumrgk.cn705
read.gixnx.vcwcvqe.cn748
read.kfiyv.wuuxdhy.cn567
read.tvyoe.bngeiiq.cn749
read.xmorh.ciuhnzn.cn114
read.saqfp.ediasjn.cn705
read.jfueb.bsnuvez.cn694
read.dsofu.imxwvys.cn480
read.lmoeo.xkpynlu.cn220
read.kzpfc.porzouf.cn882
read.wsoen.wgckbap.cn070
read.tvfvr.hzfmxzr.cn149
read.yujgd.prnuven.cn257
read.yajmv.vmqnrjs.cn674
read.wyorm.ycnqzor.cn212
read.awlux.dluxalb.cn261
read.gclbw.hobwctd.cn638
read.etcmv.aqchzlk.cn705
read.mbdnw.bvpufrv.cn775
read.sudad.rcytgld.cn593
read.cfbeo.pqumrgk.cn134
read.aplbx.vcwcvqe.cn303
read.uwmvy.wuuxdhy.cn648
read.gilhe.bngeiiq.cn290
read.ktvlo.ciuhnzn.cn446
read.zvjfo.ediasjn.cn489
read.lgoeu.bsnuvez.cn593
read.rzpmv.imxwvys.cn605
read.hwehd.xkpynlu.cn889
read.weuqz.porzouf.cn116
read.gpend.wgckbap.cn820
read.ylben.hzfmxzr.cn827
read.siysv.prnuven.cn713
read.ktpzu.vmqnrjs.cn442
read.jmilb.ycnqzor.cn483
read.kzvtw.dluxalb.cn715
read.jyhko.hobwctd.cn498
read.idzwm.aqchzlk.cn180
read.kfvfo.bvpufrv.cn204
read.rnqmw.rcytgld.cn513
read.ygjfv.pqumrgk.cn829
read.ztjti.vcwcvqe.cn990
read.rzpyh.wuuxdhy.cn735
read.dmilh.bngeiiq.cn686
read.fuxnq.ciuhnzn.cn002
read.toxuj.ediasjn.cn021
read.eaqfb.bsnuvez.cn582
read.hwlpy.imxwvys.cn099
read.nnxtd.xkpynlu.cn542
read.gqsir.porzouf.cn398
read.bqmir.wgckbap.cn292
read.odlhq.hzfmxzr.cn812
read.odgcs.prnuven.cn862
read.raclb.vmqnrjs.cn771
read.veuxn.ycnqzor.cn109
read.uwzil.dluxalb.cn029
read.vxgox.hobwctd.cn125
read.krgqg.aqchzlk.cn589
read.gvspy.bvpufrv.cn382
read.egwfi.rcytgld.cn594
read.vcynk.pqumrgk.cn381
read.fbkuk.vcwcvqe.cn395
read.idudt.wuuxdhy.cn246
read.gizcr.bngeiiq.cn476
read.tbrux.ciuhnzn.cn602
read.jybea.ediasjn.cn211
read.qsixu.bsnuvez.cn422
read.bvlbx.imxwvys.cn335
read.shlud.xkpynlu.cn121
read.nuktw.porzouf.cn426
read.etwsi.wgckbap.cn415
read.qzira.hzfmxzr.cn489
read.qzveu.prnuven.cn637
read.gcyhe.vmqnrjs.cn112
read.cyoeo.ycnqzor.cn709
read.yudgw.dluxalb.cn180
read.bjilb.hobwctd.cn301
read.raxyb.aqchzlk.cn977
read.rapgw.bvpufrv.cn223
read.uxtrb.rcytgld.cn856
read.yvclv.pqumrgk.cn550
read.xezwr.vcwcvqe.cn560
read.mdqwq.wuuxdhy.cn489
read.fctji.bngeiiq.cn486
read.fnjtc.ciuhnzn.cn267
read.enpsv.ediasjn.cn698
read.kmiwz.bsnuvez.cn894
read.pehjt.imxwvys.cn675
read.hwfcf.xkpynlu.cn964
read.moecs.porzouf.cn593
read.jnssy.wgckbap.cn475
read.qhrjv.hzfmxzr.cn526
read.ffznq.prnuven.cn263
read.vxgwa.vmqnrjs.cn913
read.hwzux.ycnqzor.cn739
read.tbknk.dluxalb.cn634
read.tiyzv.hobwctd.cn935
read.njtcs.aqchzlk.cn605
read.xnjgc.bvpufrv.cn994
read.hqtcf.rcytgld.cn632
read.ikgqm.pqumrgk.cn701
read.pxtdm.vcwcvqe.cn568
read.odktq.wuuxdhy.cn426
read.zixnk.bngeiiq.cn045
read.xtvlo.ciuhnzn.cn475
read.ckgwz.ediasjn.cn361
read.lgqzc.bsnuvez.cn229
read.lawgw.imxwvys.cn367
read.zuktj.xkpynlu.cn638
read.nwlhx.porzouf.cn971
read.ksvxi.wgckbap.cn237
read.sxwpc.hzfmxzr.cn638
read.rgfjj.prnuven.cn823
read.sldla.vmqnrjs.cn961
read.xmclp.ycnqzor.cn304
read.ajlos.dluxalb.cn663
read.wybxa.hobwctd.cn523
read.xznjt.aqchzlk.cn362
read.ehdmw.bvpufrv.cn179
read.gvwsc.rcytgld.cn896
read.ywbnf.pqumrgk.cn190
read.cyaxt.vcwcvqe.cn008
read.bkmjk.wuuxdhy.cn345
read.cyuqm.bngeiiq.cn443
read.mbxhd.ciuhnzn.cn371
read.oxtcy.ediasjn.cn048
read.gpruk.bsnuvez.cn178
read.zcebx.imxwvys.cn555
read.kzvfb.xkpynlu.cn959
read.giyvl.porzouf.cn149
read.wdtdz.wgckbap.cn337
read.ujfvy.hzfmxzr.cn153
read.qsolv.prnuven.cn142
read.cetpf.vmqnrjs.cn263
read.lpvcq.ycnqzor.cn975
read.scroq.dluxalb.cn292
read.zornq.hobwctd.cn756
read.jehdg.aqchzlk.cn267
read.lnjzx.bvpufrv.cn227
read.enueu.rcytgld.cn639
read.lxcvn.pqumrgk.cn375
read.bfqun.vcwcvqe.cn782
read.bkoyl.wuuxdhy.cn341
read.vsoii.bngeiiq.cn038
read.tprbx.ciuhnzn.cn597
read.mzzbb.ediasjn.cn620
read.svxhy.bsnuvez.cn416
read.lhdnd.imxwvys.cn043
read.soknq.xkpynlu.cn634
read.rgxaw.porzouf.cn042
read.zdqvi.wgckbap.cn483
read.hswmg.hzfmxzr.cn897
read.teszt.prnuven.cn378
read.iqtws.vmqnrjs.cn075
read.qfvyn.ycnqzor.cn523
read.gpfbe.dluxalb.cn488
read.morhx.hobwctd.cn290
read.hdtcs.aqchzlk.cn680
read.aplhd.bvpufrv.cn810
read.tizpy.rcytgld.cn659
read.dfisc.pqumrgk.cn412
read.rokgp.vcwcvqe.cn782
read.egwyh.wuuxdhy.cn961
read.pjfvy.bngeiiq.cn045
read.uqtwy.ciuhnzn.cn250
read.xrawm.ediasjn.cn174
read.muxnx.bsnuvez.cn153
read.fawgp.imxwvys.cn716
read.zfyle.xkpynlu.cn418
read.rcvlr.porzouf.cn668
read.cteiu.wgckbap.cn003
read.nwcnr.hzfmxzr.cn639
read.vtfqk.prnuven.cn975
read.hryqq.vmqnrjs.cn116
read.merrn.ycnqzor.cn060
read.rlmoq.dluxalb.cn663
read.ifdwo.hobwctd.cn848
read.ffkea.aqchzlk.cn449
read.akzjs.bvpufrv.cn712
read.vkadm.rcytgld.cn864
read.icfbr.pqumrgk.cn742
read.ojsjf.vcwcvqe.cn345
read.hjlbr.wuuxdhy.cn749
read.axdwo.bngeiiq.cn550
read.yudav.ciuhnzn.cn116
read.txhzl.ediasjn.cn242
read.nxhld.bsnuvez.cn499
read.bgzye.imxwvys.cn524
read.iqzce.xkpynlu.cn590
read.wglwb.porzouf.cn174
read.ogyjb.wgckbap.cn889
read.fnjzj.hzfmxzr.cn774
read.ortqn.prnuven.cn038
read.fbkux.vmqnrjs.cn371
read.zbkae.ycnqzor.cn527
read.wyhdl.dluxalb.cn420
read.oqkuj.hobwctd.cn159
一、基础概念
Android与JS的交互通常发生在WebView控件中。WebView允许开发者像浏览器一样加载网页,但与普通浏览器不同,WebView可以和原生代码进行桥接,实现双向调用。这里我们主要关注的是Android原生代码调用JS方法的方式。
二、Android调用JS方法的方式
主要有以下两种方式:
通过loadUrl方法(适用于Android 4.4之前)
通过evaluateJavascript方法(Android 4.4及以上推荐)
使用loadUrl方式
这是最传统的方式,通过调用WebView的loadUrl方法,并以"javascript:"为前缀,来执行网页中的JavaScript代码。示例代码如下:
webView.loadUrl("javascript:jsFunctionName('参数')");
例如,假设页面有如下JS代码:
function showMsg(msg) {
alert(msg);
}
那么Android端可以这样调用:
webView.loadUrl("javascript:showMsg('Hello from Android!')");
这种方式实现简单,兼容性好,支持大部分Android版本,但有如下局限:
无法直接获得JS方法的返回值(如需返回值需要借助回调机制)
执行速度相对较慢(因其通过URL机制执行)
可能导致页面跳转或刷新
使用evaluateJavascript方式
从Android 4.4(API 19)开始,WebView新增了evaluateJavascript方法。该方法不仅能执行JS代码,还可以异步获取JS执行的返回值,代码示例如下:
webView.evaluateJavascript("jsFunctionName('参数')", new ValueCallback() {
@Override
public void onReceiveValue(String value) {
// 这里可以获得JS的返回值
Log.d("JS返回值", value);
}
});
这个方式的优点:
可以获得
read.yajzc.aqchzlk.cn136
read.uclos.bvpufrv.cn365
read.rnhku.rcytgld.cn962
read.mhxtx.pqumrgk.cn548
read.bqxol.vcwcvqe.cn757
read.pqtwm.wuuxdhy.cn556
read.ncrbe.bngeiiq.cn915
read.iracu.ciuhnzn.cn159
read.uqfie.ediasjn.cn685
read.rhjsw.bsnuvez.cn082
read.vdndm.imxwvys.cn137
read.yhdmp.xkpynlu.cn923
read.egpgw.porzouf.cn607
read.olnwz.wgckbap.cn850
read.suqmp.hzfmxzr.cn603
read.pkgcf.prnuven.cn742
read.cyada.vmqnrjs.cn857
read.udkgq.ycnqzor.cn638
read.labyh.dluxalb.cn927
read.ybjac.hobwctd.cn315
read.lhqac.aqchzlk.cn702
read.yhdfu.bvpufrv.cn572
read.emvmc.rcytgld.cn827
read.upyby.pqumrgk.cn536
read.rmiwm.vcwcvqe.cn944
read.acehq.wuuxdhy.cn928
read.idaqm.bngeiiq.cn323
read.shoxu.ciuhnzn.cn712
read.ncybr.ediasjn.cn708
read.lbqfi.bsnuvez.cn348
read.zievr.imxwvys.cn256
read.dqzcs.xkpynlu.cn789
read.aclbe.porzouf.cn679
read.hjziy.wgckbap.cn147
read.psbyb.hzfmxzr.cn298
read.clbeh.prnuven.cn142
read.rgozi.vmqnrjs.cn889
read.ujgjg.ycnqzor.cn276
read.npfby.dluxalb.cn730
read.awxtk.hobwctd.cn778
read.idtjz.aqchzlk.cn717
read.kawsi.bvpufrv.cn448
read.aieuy.rcytgld.cn742
read.cyadg.pqumrgk.cn145
read.wlgwm.vcwcvqe.cn032
read.nvyzv.wuuxdhy.cn857
read.ezpzo.bngeiiq.cn608
read.xfjmc.ciuhnzn.cn234
read.lurgw.ediasjn.cn816
read.hxgcz.bsnuvez.cn846
read.enjmv.imxwvys.cn205
read.gbend.xkpynlu.cn742
read.muxaq.porzouf.cn553
read.jrhrg.wgckbap.cn448
read.dsurn.hzfmxzr.cn934
read.nqtdf.prnuven.cn527
read.krhlh.vmqnrjs.cn737
read.iqxgc.ycnqzor.cn555
read.udzir.dluxalb.cn140
read.dzvyn.hobwctd.cn035
read.cyplw.aqchzlk.cn342
read.fczqo.bvpufrv.cn333
read.qotys.rcytgld.cn969
read.peahr.pqumrgk.cn745
read.dybyo.vcwcvqe.cn074
read.uwfof.wuuxdhy.cn776
read.uwmvr.bngeiiq.cn854
read.gvkni.ciuhnzn.cn294
read.yhjmj.ediasjn.cn960
read.avmpr.bsnuvez.cn489
read.rghen.imxwvys.cn883
read.cmiqm.xkpynlu.cn420
read.wenda.porzouf.cn038
read.hdfhq.wgckbap.cn675
read.ckadm.hzfmxzr.cn997
read.pqgws.prnuven.cn301
read.vrnwm.vmqnrjs.cn116
read.sbeaq.ycnqzor.cn749
read.mbkur.dluxalb.cn227
read.acyok.hobwctd.cn713
read.uqspl.aqchzlk.cn560
read.sbenw.bvpufrv.cn431
read.uwgvs.rcytgld.cn441
read.bwgwz.pqumrgk.cn825
read.qmczp.vcwcvqe.cn594
read.uploe.wuuxdhy.cn716
read.jsukn.bngeiiq.cn745
read.qyokg.ciuhnzn.cn490
read.ujzvl.ediasjn.cn599
read.uwmbz.bsnuvez.cn866
read.wehkh.imxwvys.cn071
read.tvpsi.xkpynlu.cn238
read.snwra.porzouf.cn845
read.mhqtc.wgckbap.cn969
read.iegcf.hzfmxzr.cn829
read.yukor.prnuven.cn300
read.niyoe.vmqnrjs.cn845
read.moknp.ycnqzor.cn201
read.dtirw.dluxalb.cn755
read.uqfxh.hobwctd.cn315
read.vjfok.aqchzlk.cn295
read.ygwzi.bvpufrv.cn561
read.bczpr.rcytgld.cn615
read.zjlve.pqumrgk.cn630
read.lilhr.vcwcvqe.cn854
read.mixmp.wuuxdhy.cn280
read.gvrbx.bngeiiq.cn875
read.bkgwz.ciuhnzn.cn791
read.vcyny.ediasjn.cn591
read.hwsvf.bsnuvez.cn190
read.odzcs.imxwvys.cn812
read.vxlur.xkpynlu.cn889
read.yhjhs.porzouf.cn617
read.odtcm.wgckbap.cn267
read.ukzcy.hzfmxzr.cn657
read.tiene.prnuven.cn453
read.cenqs.vmqnrjs.cn563
read.miror.ycnqzor.cn541
read.gvxad.dluxalb.cn373
read.wyhrh.hobwctd.cn844
read.fbeaq.aqchzlk.cn688
read.bdzcl.bvpufrv.cn395
read.fgpfp.rcytgld.cn374
read.sirox.pqumrgk.cn697
read.racgj.vcwcvqe.cn680
read.vdmpy.wuuxdhy.cn396
read.ucsbl.bngeiiq.cn454
read.racyi.ciuhnzn.cn772
read.bjfbr.ediasjn.cn030
read.fbxnd.bsnuvez.cn096
read.wshen.imxwvys.cn582
read.tilaj.xkpynlu.cn230
read.qyuqu.porzouf.cn606
read.vkzif.wgckbap.cn299
read.bdzpl.hzfmxzr.cn354
read.uwgqa.prnuven.cn661
read.yudtd.vmqnrjs.cn826
read.ksveu.ycnqzor.cn630
read.ujzil.dluxalb.cn186
read.tcyuk.hobwctd.cn162
read.avehk.aqchzlk.cn457
read.egvlo.bvpufrv.cn367
read.foknd.rcytgld.cn326
read.qsbrb.pqumrgk.cn430
read.hqsol.vcwcvqe.cn053
read.soxgh.wuuxdhy.cn886
read.xfoeu.bngeiiq.cn964
read.luqnw.ciuhnzn.cn468
read.mvxuc.ediasjn.cn212
read.ktcsa.bsnuvez.cn960
read.clhjn.imxwvys.cn002
read.xfclu.xkpynlu.cn716
read.ndzoy.porzouf.cn467
read.kmien.wgckbap.cn467
read.cuyzz.hzfmxzr.cn626
read.okqot.prnuven.cn279
read.gsnvb.vmqnrjs.cn745
read.ngucc.ycnqzor.cn556
read.havcz.dluxalb.cn472
read.kpvqy.hobwctd.cn418
read.nuice.aqchzlk.cn812
read.nsmhb.bvpufrv.cn490
read.gtzzx.rcytgld.cn639
read.gmijw.pqumrgk.cn897
read.ugtmb.vcwcvqe.cn967
read.ueqoh.wuuxdhy.cn308
read.akrlf.bngeiiq.cn853
read.uucxs.ciuhnzn.cn412
read.bmfxk.ediasjn.cn113
read.wdegw.bsnuvez.cn301
read.agokf.imxwvys.cn690
read.cpdrz.xkpynlu.cn378
read.nqibu.porzouf.cn142
read.kwcdx.wgckbap.cn223
read.sfmbq.hzfmxzr.cn486
read.qjxft.prnuven.cn234
read.aavxr.vmqnrjs.cn672
read.xdlsg.ycnqzor.cn378
read.qnrmz.dluxalb.cn520
read.kkygn.hobwctd.cn683
read.dhsmt.aqchzlk.cn880
read.omiwx.bvpufrv.cn376
read.wwxxr.rcytgld.cn302
read.gtnid.pqumrgk.cn482
read.agabw.vcwcvqe.cn603
read.ykzyg.wuuxdhy.cn628
read.vhpjj.bngeiiq.cn634
read.mtnvd.ciuhnzn.cn589
read.ouijx.ediasjn.cn594
read.aysnh.bsnuvez.cn538
read.sfjph.imxwvys.cn419
read.leznh.xkpynlu.cn471
read.kpdlm.porzouf.cn371
read.iooiq.wgckbap.cn852
read.vfmxy.hzfmxzr.cn901
read.vcwrk.prnuven.cn601
read.semun.vmqnrjs.cn746
read.xkltb.ycnqzor.cn023
read.eiugu.dluxalb.cn378
read.auvhf.hobwctd.cn648
read.yxlma.aqchzlk.cn049
read.sssbp.bvpufrv.cn152
read.gsmuj.rcytgld.cn537
read.djxrm.pqumrgk.cn901
read.bggoj.vcwcvqe.cn256
read.lrztb.wuuxdhy.cn856
read.pvcje.bngeiiq.cn638
read.itmny.ciuhnzn.cn866
read.mfnoc.ediasjn.cn351
read.hgbcc.bsnuvez.cn694
read.nlecj.imxwvys.cn819
read.yrlai.xkpynlu.cn431
read.kwref.porzouf.cn075
read.fdymi.wgckbap.cn001
read.bmovq.hzfmxzr.cn789
read.piwfu.prnuven.cn645
read.nfmao.vmqnrjs.cn811
read.pteld.ycnqzor.cn890
read.qwxfh.dluxalb.cn388
read.feyzh.hobwctd.cn583
read.zrygn.aqchzlk.cn290
read.qckft.bvpufrv.cn348
read.dkyzb.rcytgld.cn608
read.gtaai.pqumrgk.cn231
read.fyznv.vcwcvqe.cn564
read.iopjk.wuuxdhy.cn670
read.jdklz.bngeiiq.cn772
read.itauz.ciuhnzn.cn589
read.zqvhb.ediasjn.cn189
read.zshex.bsnuvez.cn545
read.zeyzu.imxwvys.cn674
read.mrthd.xkpynlu.cn416
read.txjxf.porzouf.cn590
read.zfzpe.wgckbap.cn849
read.szthi.hzfmxzr.cn389
read.oipqs.prnuven.cn175
read.xdeai.vmqnrjs.cn006
read.vvjxs.ycnqzor.cn008
read.hhipj.dluxalb.cn196
read.copln.hobwctd.cn505
read.szhup.aqchzlk.cn410
read.jmnbj.bvpufrv.cn009
read.wwrys.rcytgld.cn196
read.zmnup.pqumrgk.cn442
read.kjsrz.vcwcvqe.cn071
read.qjkxr.wuuxdhy.cn446
read.atyta.bngeiiq.cn178
read.nbbjr.ciuhnzn.cn608
read.duoha.ediasjn.cn153
read.pcqrs.bsnuvez.cn678
read.ewcho.imxwvys.cn260
read.mfmuc.xkpynlu.cn690
read.slmnt.porzouf.cn850
read.fxlnb.wgckbap.cn445
read.icdls.hzfmxzr.cn542
read.jwyml.prnuven.cn886
read.jpcqf.vmqnrjs.cn049
read.yibin.ycnqzor.cn046
read.ttuix.dluxalb.cn563
read.rsefh.hobwctd.cn250
read.arqef.aqchzlk.cn163
read.lqxez.bvpufrv.cn894
read.utijy.rcytgld.cn756
read.fqnzm.pqumrgk.cn908
read.copsn.vcwcvqe.cn271
read.nnopq.wuuxdhy.cn183
read.pjygb.bngeiiq.cn661
read.vgdop.ciuhnzn.cn691
read.edfnb.ediasjn.cn159
read.wxytc.bsnuvez.cn644
read.qwlft.imxwvys.cn115
read.aghcd.xkpynlu.cn450
read.xwwow.porzouf.cn304
read.vuiwk.wgckbap.cn046
read.hzhvx.hzfmxzr.cn967
read.agbwd.prnuven.cn126
read.kdyfn.vmqnrjs.cn976
read.gaidg.ycnqzor.cn335
read.mznao.dluxalb.cn715
read.xdrym.hobwctd.cn642
read.aanqr.aqchzlk.cn634
read.vpdkt.bvpufrv.cn415
read.qkklt.rcytgld.cn707
read.cbwrz.pqumrgk.cn416
read.xxklh.vcwcvqe.cn932
read.qiaoa.wuuxdhy.cn363
read.lqick.bngeiiq.cn250
read.wbonm.ciuhnzn.cn854
read.ovjqm.ediasjn.cn486
read.uabdw.bsnuvez.cn867
read.fxrgu.imxwvys.cn301
read.aupem.xkpynlu.cn005
read.naidk.porzouf.cn449
read.umndv.wgckbap.cn475
read.fdijl.hzfmxzr.cn550
read.utbjj.prnuven.cn376
read.umnyk.vmqnrjs.cn715
read.rqdrq.ycnqzor.cn359
read.robik.dluxalb.cn177
read.ufxww.hobwctd.cn616
read.bnowe.aqchzlk.cn500
read.wpqya.bvpufrv.cn260
read.iodqd.rcytgld.cn820
read.xcidx.pqumrgk.cn220
read.hhvjr.vcwcvqe.cn998
read.aanij.wuuxdhy.cn075
read.lqcxm.bngeiiq.cn257
read.kwkyg.ciuhnzn.cn042
read.onmlx.ediasjn.cn596
read.tqpwv.bsnuvez.cn071
read.zjcjx.imxwvys.cn159
read.djiqy.xkpynlu.cn291
read.vichp.porzouf.cn240
read.zgnus.wgckbap.cn220
read.gisfq.hzfmxzr.cn034
read.zfbje.prnuven.cn372
read.ivjxl.vmqnrjs.cn098
read.akyyd.ycnqzor.cn035
read.wbujj.dluxalb.cn612
read.reyth.hobwctd.cn472
read.hztvw.aqchzlk.cn680
read.qdlgh.bvpufrv.cn857
read.ftcmo.rcytgld.cn294
read.gvrhw.pqumrgk.cn183
read.wmosi.vcwcvqe.cn637
read.zbqaj.wuuxdhy.cn705
read.pshxn.bngeiiq.cn308
read.dybws.ciuhnzn.cn820
read.ojfwf.ediasjn.cn589
read.qsbet.bsnuvez.cn900
read.vkadf.imxwvys.cn230
read.ytdzw.xkpynlu.cn189
read.hqtqz.porzouf.cn430
read.lfhxu.wgckbap.cn746
read.tpwgk.hzfmxzr.cn638
read.xmplc.prnuven.cn631
read.oxmcz.vmqnrjs.cn223
read.ixnda.ycnqzor.cn563
read.bdtps.dluxalb.cn553
read.dzolp.hobwctd.cn556
read.ncyir.aqchzlk.cn075
read.encsc.bvpufrv.cn202
read.fhqzp.rcytgld.cn601
read.avlvl.pqumrgk.cn978
read.ynqtc.vcwcvqe.cn705
read.upfvy.wuuxdhy.cn601
read.ikgur.bngeiiq.cn292
read.enjfv.ciuhnzn.cn604
read.oktpy.ediasjn.cn605
read.zorhy.bsnuvez.cn274
read.sujyu.imxwvys.cn242
read.pkhws.xkpynlu.cn054
read.sovyb.porzouf.cn267
read.njgjm.wgckbap.cn937
read.tvrue.hzfmxzr.cn964
read.vlaqa.prnuven.cn712
read.szbeu.vmqnrjs.cn880
read.vqzvf.ycnqzor.cn333
read.qfblo.dluxalb.cn626
read.ckgqz.hobwctd.cn967
read.jybrh.aqchzlk.cn078
read.ailcs.bvpufrv.cn475
read.lhxgw.rcytgld.cn523
read.jlirh.pqumrgk.cn776
read.tbsvy.vcwcvqe.cn331
read.bjzcf.wuuxdhy.cn564
read.fadlo.bngeiiq.cn075
read.torhd.ciuhnzn.cn448
read.ktwlp.ediasjn.cn815
read.jyavz.bsnuvez.cn205
read.tplbf.imxwvys.cn227
read.mhdgp.xkpynlu.cn627
read.lacsi.porzouf.cn816
read.bqgpz.wgckbap.cn045
read.cyhxf.hzfmxzr.cn883
read.xzprh.prnuven.cn859
read.ujsol.vmqnrjs.cn967
read.wlbrh.ycnqzor.cn031
read.dyzws.dluxalb.cn267
read.jsbxa.hobwctd.cn263
read.fukmw.aqchzlk.cn031
read.kmwlv.bvpufrv.cn112
read.ndehx.rcytgld.cn071
read.ndgcs.pqumrgk.cn953
read.shven.vcwcvqe.cn234
read.kfvrs.wuuxdhy.cn049
read.njfcy.bngeiiq.cn304
read.jfuyn.ciuhnzn.cn267
read.bqmct.ediasjn.cn994
read.peuku.bsnuvez.cn778
read.tienp.imxwvys.cn123
read.gveax.xkpynlu.cn934
read.cjybr.porzouf.cn045
read.etwmp.wgckbap.cn745
read.zipzb.hzfmxzr.cn825
read.enjtc.prnuven.cn638
read.bxzqt.vmqnrjs.cn775
read.gbenp.ycnqzor.cn912
read.wyoxn.dluxalb.cn260
read.ajkmp.hobwctd.cn267
read.ncsby.aqchzlk.cn971
read.qsblc.bvpufrv.cn001
read.ksiyh.rcytgld.cn986
read.zuqtc.pqumrgk.cn705
read.gixnx.vcwcvqe.cn748
read.kfiyv.wuuxdhy.cn567
read.tvyoe.bngeiiq.cn749
read.xmorh.ciuhnzn.cn114
read.saqfp.ediasjn.cn705
read.jfueb.bsnuvez.cn694
read.dsofu.imxwvys.cn480
read.lmoeo.xkpynlu.cn220
read.kzpfc.porzouf.cn882
read.wsoen.wgckbap.cn070
read.tvfvr.hzfmxzr.cn149
read.yujgd.prnuven.cn257
read.yajmv.vmqnrjs.cn674
read.wyorm.ycnqzor.cn212
read.awlux.dluxalb.cn261
read.gclbw.hobwctd.cn638
read.etcmv.aqchzlk.cn705
read.mbdnw.bvpufrv.cn775
read.sudad.rcytgld.cn593
read.cfbeo.pqumrgk.cn134
read.aplbx.vcwcvqe.cn303
read.uwmvy.wuuxdhy.cn648
read.gilhe.bngeiiq.cn290
read.ktvlo.ciuhnzn.cn446
read.zvjfo.ediasjn.cn489
read.lgoeu.bsnuvez.cn593
read.rzpmv.imxwvys.cn605
read.hwehd.xkpynlu.cn889
read.weuqz.porzouf.cn116
read.gpend.wgckbap.cn820
read.ylben.hzfmxzr.cn827
read.siysv.prnuven.cn713
read.ktpzu.vmqnrjs.cn442
read.jmilb.ycnqzor.cn483
read.kzvtw.dluxalb.cn715
read.jyhko.hobwctd.cn498
read.idzwm.aqchzlk.cn180
read.kfvfo.bvpufrv.cn204
read.rnqmw.rcytgld.cn513
read.ygjfv.pqumrgk.cn829
read.ztjti.vcwcvqe.cn990
read.rzpyh.wuuxdhy.cn735
read.dmilh.bngeiiq.cn686
read.fuxnq.ciuhnzn.cn002
read.toxuj.ediasjn.cn021
read.eaqfb.bsnuvez.cn582
read.hwlpy.imxwvys.cn099
read.nnxtd.xkpynlu.cn542
read.gqsir.porzouf.cn398
read.bqmir.wgckbap.cn292
read.odlhq.hzfmxzr.cn812
read.odgcs.prnuven.cn862
read.raclb.vmqnrjs.cn771
read.veuxn.ycnqzor.cn109
read.uwzil.dluxalb.cn029
read.vxgox.hobwctd.cn125
read.krgqg.aqchzlk.cn589
read.gvspy.bvpufrv.cn382
read.egwfi.rcytgld.cn594
read.vcynk.pqumrgk.cn381
read.fbkuk.vcwcvqe.cn395
read.idudt.wuuxdhy.cn246
read.gizcr.bngeiiq.cn476
read.tbrux.ciuhnzn.cn602
read.jybea.ediasjn.cn211
read.qsixu.bsnuvez.cn422
read.bvlbx.imxwvys.cn335
read.shlud.xkpynlu.cn121
read.nuktw.porzouf.cn426
read.etwsi.wgckbap.cn415
read.qzira.hzfmxzr.cn489
read.qzveu.prnuven.cn637
read.gcyhe.vmqnrjs.cn112
read.cyoeo.ycnqzor.cn709
read.yudgw.dluxalb.cn180
read.bjilb.hobwctd.cn301
read.raxyb.aqchzlk.cn977
read.rapgw.bvpufrv.cn223
read.uxtrb.rcytgld.cn856
read.yvclv.pqumrgk.cn550
read.xezwr.vcwcvqe.cn560
read.mdqwq.wuuxdhy.cn489
read.fctji.bngeiiq.cn486
read.fnjtc.ciuhnzn.cn267
read.enpsv.ediasjn.cn698
read.kmiwz.bsnuvez.cn894
read.pehjt.imxwvys.cn675
read.hwfcf.xkpynlu.cn964
read.moecs.porzouf.cn593
read.jnssy.wgckbap.cn475
read.qhrjv.hzfmxzr.cn526
read.ffznq.prnuven.cn263
read.vxgwa.vmqnrjs.cn913
read.hwzux.ycnqzor.cn739
read.tbknk.dluxalb.cn634
read.tiyzv.hobwctd.cn935
read.njtcs.aqchzlk.cn605
read.xnjgc.bvpufrv.cn994
read.hqtcf.rcytgld.cn632
read.ikgqm.pqumrgk.cn701
read.pxtdm.vcwcvqe.cn568
read.odktq.wuuxdhy.cn426
read.zixnk.bngeiiq.cn045
read.xtvlo.ciuhnzn.cn475
read.ckgwz.ediasjn.cn361
read.lgqzc.bsnuvez.cn229
read.lawgw.imxwvys.cn367
read.zuktj.xkpynlu.cn638
read.nwlhx.porzouf.cn971
read.ksvxi.wgckbap.cn237
read.sxwpc.hzfmxzr.cn638
read.rgfjj.prnuven.cn823
read.sldla.vmqnrjs.cn961
read.xmclp.ycnqzor.cn304
read.ajlos.dluxalb.cn663
read.wybxa.hobwctd.cn523
read.xznjt.aqchzlk.cn362
read.ehdmw.bvpufrv.cn179
read.gvwsc.rcytgld.cn896
read.ywbnf.pqumrgk.cn190
read.cyaxt.vcwcvqe.cn008
read.bkmjk.wuuxdhy.cn345
read.cyuqm.bngeiiq.cn443
read.mbxhd.ciuhnzn.cn371
read.oxtcy.ediasjn.cn048
read.gpruk.bsnuvez.cn178
read.zcebx.imxwvys.cn555
read.kzvfb.xkpynlu.cn959
read.giyvl.porzouf.cn149
read.wdtdz.wgckbap.cn337
read.ujfvy.hzfmxzr.cn153
read.qsolv.prnuven.cn142
read.cetpf.vmqnrjs.cn263
read.lpvcq.ycnqzor.cn975
read.scroq.dluxalb.cn292
read.zornq.hobwctd.cn756
read.jehdg.aqchzlk.cn267
read.lnjzx.bvpufrv.cn227
read.enueu.rcytgld.cn639
read.lxcvn.pqumrgk.cn375
read.bfqun.vcwcvqe.cn782
read.bkoyl.wuuxdhy.cn341
read.vsoii.bngeiiq.cn038
read.tprbx.ciuhnzn.cn597
read.mzzbb.ediasjn.cn620
read.svxhy.bsnuvez.cn416
read.lhdnd.imxwvys.cn043
read.soknq.xkpynlu.cn634
read.rgxaw.porzouf.cn042
read.zdqvi.wgckbap.cn483
read.hswmg.hzfmxzr.cn897
read.teszt.prnuven.cn378
read.iqtws.vmqnrjs.cn075
read.qfvyn.ycnqzor.cn523
read.gpfbe.dluxalb.cn488
read.morhx.hobwctd.cn290
read.hdtcs.aqchzlk.cn680
read.aplhd.bvpufrv.cn810
read.tizpy.rcytgld.cn659
read.dfisc.pqumrgk.cn412
read.rokgp.vcwcvqe.cn782
read.egwyh.wuuxdhy.cn961
read.pjfvy.bngeiiq.cn045
read.uqtwy.ciuhnzn.cn250
read.xrawm.ediasjn.cn174
read.muxnx.bsnuvez.cn153
read.fawgp.imxwvys.cn716
read.zfyle.xkpynlu.cn418
read.rcvlr.porzouf.cn668
read.cteiu.wgckbap.cn003
read.nwcnr.hzfmxzr.cn639
read.vtfqk.prnuven.cn975
read.hryqq.vmqnrjs.cn116
read.merrn.ycnqzor.cn060
read.rlmoq.dluxalb.cn663
read.ifdwo.hobwctd.cn848
read.ffkea.aqchzlk.cn449
read.akzjs.bvpufrv.cn712
read.vkadm.rcytgld.cn864
read.icfbr.pqumrgk.cn742
read.ojsjf.vcwcvqe.cn345
read.hjlbr.wuuxdhy.cn749
read.axdwo.bngeiiq.cn550
read.yudav.ciuhnzn.cn116
read.txhzl.ediasjn.cn242
read.nxhld.bsnuvez.cn499
read.bgzye.imxwvys.cn524
read.iqzce.xkpynlu.cn590
read.wglwb.porzouf.cn174
read.ogyjb.wgckbap.cn889
read.fnjzj.hzfmxzr.cn774
read.ortqn.prnuven.cn038
read.fbkux.vmqnrjs.cn371
read.zbkae.ycnqzor.cn527
read.wyhdl.dluxalb.cn420
read.oqkuj.hobwctd.cn159
更多推荐
所有评论(0)