首页

文章

在Android上怎样实现JAVA和JS交互

发布网友 发布时间:2022-04-19 20:27

我来回答

2个回答

热心网友 时间:2022-04-23 06:04

Android中java与js交互是通过webView来交互的。

WebView(网络视图)能加载显示网页,可以将其视为一个浏览器。它使用了WebKit渲染引擎加载显示网页,实现WebView有以下两种不同的方法:
第一种方法的步骤:
1.在要Activity中实例化WebView组件:WebView webView = new WebView(this);
2.调用WebView的loadUrl()方法,设置WevView要显示的网页:
互联网用:webView.loadUrl("http://www.google.com");
本地文件用:webView.loadUrl("file:///android_asset/XX.html"); 本地文件存放在:assets 文件中
3.调用Activity的setContentView( )方法来显示网页视图
4.用WebView点链接看了很多页以后为了让WebView支持回退功能,需要覆盖覆盖Activity类的onKeyDown()方法,如果不做任何处理,点击系统回退剪键,整个浏览器会调用finish()而结束自身,而不是回退到上一页面
5.需要在AndroidManifest.xml文件中添加权限,否则会出现Web page not available错误。
<uses-permission android:name="android.permission.INTERNET" />

第二种方法的步骤:
1、在布局文件中声明WebView
2、在Activity中实例化WebView
3、调用WebView的loadUrl( )方法,设置WevView要显示的网页
4、为了让WebView能够响应超链接功能,调用setWebViewClient( )方法,设置 WebView视图
5、用WebView点链接看了很多页以后为了让WebView支持回退功能,需要覆盖覆盖Activity类的onKeyDown()方法,如果不做任何处理,点击系统回退剪键,整个浏览器会调用finish()而结束自身,而不是回退到上一页面
6、需要在AndroidManifest.xml文件中添加权限,否则出现Web page not available错误。
<uses-permission android:name="android.permission.INTERNET"/>

热心网友 时间:2022-04-23 07:22

Java代码mWebview.getSettings().setJavas criptEnabled(true);
然后是设置webview要加载的网页:
web的网页:webView.loadUrl("http://www.google.com");
本地的网页:webView.loadUrl("file:///android_asset/XX.html"); //本地的存放在:assets文件夹中
webview做完基本的初始化后我们还要要给它,加进一个回调的代理类Javas criptInterface,并给它一个调用的名称:ncp
Java代码
mWebView.addJavas criptInterface(new Javas criptInterface(),"ncp");

Javas criptInterface可以是一个普通的Java类,类实现的方法,均可被js回调:
Java代码

final class Javas criptInterface {
public int callOnJs() {
return 1000;
}
public void callOnJs2(String mode) {
//TODO
}
}

Java要调用js的方法,只需知道js的方法名称即可:
Java代码
mWebView.loadUrl("javas cript:onSaveCallback()");
js 这边就更简单:
Js代码

window.onload = function(){
document.getElementById('btn_1').addEventListener('click', onBtnClick, false);
var _int_value = window.ncp.callOnJs();
alert("get int from java:" + _int_value );
}
function onBtnClick() {
window.ncp.callOnJs2("click");
}
历史要怎么读,有啥诀窍 高中历史诀窍 年终会活动策划方案 深度解析:第一财经回放,探索财经新风向 逆水寒手游庄园怎么邀请好友同住 逆水寒手游 逆水寒不同区可以一起组队吗? 逆水寒手游 逆水寒怎么进入好友世界? 逆水寒手游 逆水寒怎么去别人的庄园? 使用puppeteer实现将htmll转成pdf 内卷时代下的前端技术-使用JavaScript在浏览器中生成PDF文档 【译】将HTML转为PDF的几种实现方案 变形金刚08动画怎么样 变形金刚08动画的问题 变形金刚08动画日语版剧情介绍 高分!换显卡nvidia控制面板被我卸了,重新安装显卡驱动后没了nvidia控... 我的nvidia控制面板被卸载了 怎么找回啊 卸载后 这个画面看着很奇怪_百 ... 李卓彬工作简历 林少明工作简历 广东工业职业技术学院怎么样 郑德涛任职简历 唐新桂个人简历 土地入股的定义 ups快递客服电话24小时 贷款记录在征信保留几年? 安徽徽商城有限公司公司简介 安徽省徽商集团新能源股份有限公司基本情况 安徽省徽商集团有限公司经营理念 2019哈尔滨煤气费怎么有税? 快手删除的作品如何恢复 体育理念体育理念 有关体育的格言和理念 什么是体育理念 万里挑一算彩礼还是见面礼 绿萝扦插多少天后发芽 绿萝扦插多久发芽 扦插绿萝多久发芽 炖牛排骨的做法和配料 网络诈骗定罪标准揭秘 “流水不争先”是什么意思? mc中钻石装备怎么做 为什么我的MC里的钻石块是这样的?我想要那种。是不是版本的问题?如果是... 带“偷儿”的诗句 “君不见巴丘古城如培塿”的出处是哪里 带“奈何”的诗句大全(229句) 里翁行()拼音版、注音及读音 带“不虑”的诗句 “鲁肃当年万人守”的出处是哪里 无尘防尘棚 进出口报关流程,越详细越好。谢谢大家指教。 双线桥不是看化合价升多少就标多少的吗?为什么CL2+2KI=2KCL+I2中I失... 孩子上户口 关于孩子上户口 孩子上户口怎么办 怎样给孩子上户口 小孩子上户口需要办理什么手续? 如何给孩子上户口? 孩子上户口需要什么资料 给孩子上户口需要什么条件 给孩子上户口需要什么证件 孩子上户口需要带什么证件 手机总是提示充电口潮湿,怎么回事 在手机上,删了文件管理里的文件,导致我哔哩哔哩... 三星note9手机检测到usb接口进水潮湿,充不进电怎么办? 减肥瘦身锻炼计划方法 怎样安排一周减肥计划 急求减肥计划一周表??? 减肥!减肥!求运动减肥一周计划。 瘦身(减肥)计划 求一份详细家庭减脂训练计划 怎样制定合理的减肥计划 js的框架能用到android开发中吗?比如echart,momen... android与js交互实现什么功能 怎样在Android开发中与js进行交互 在Android开发过程中搭建一个自己的应用框架有几个... android 混合开发 框架有哪些 什么是js框架? 安卓和javascript交互必须通过webView吗?可以用安... Android如何调用框架iframe里面的js方法 急急急急... 原生APP中js怎样与Android和ios进行交互 android与javascript的交互可以不通过webview吗 reactnative中android与js只进行数据交互该怎么做 android js交互获取不到Android的方法 Android使用WebView和JS交互的问题 androidwebview加载本地js怎么实现交互 android 前端框架有哪些 Android开发中有没有类似Web前端的UI框架 android和h5交互,js怎么在android端打印日志 敢当石襄错了怎样办 柳土獐的介绍 什么是沙笔?
声明声明:本网页内容为用户发布,旨在传播知识,不代表本网认同其观点,若有侵权等问题请及时与本网联系,我们将在第一时间删除处理。E-MAIL:11247931@qq.com