android evaluater_android通过WebView的evaluateJavascript()调用JS
因为该方法的执行不会使页面刷新,而方法(loadUrl )的执行则会使页面刷新。
Android 4.4 后才可使用
仅java代码不同,可以接收JS函数的返回值
public class MainActivity extends Activity {
WebView webView;
Button buttonLeft, buttonRight;
@Override
protected void onCreate(Bundle savedInstanceState) {
super.onCreate(savedInstanceState);
setContentView(R.layout.activity_main);
webView = findViewById(R.id.webview);
buttonLeft = findViewById(R.id.btnLeft);
buttonRight = findViewById(R.id.btnRight);
WebSettings webSettings = webView.getSettings();
//允许使用JS
webSettings.setJavaScriptEnabled(true);
// 设置允许JS弹窗
webSettings.setJavaScriptCanOpenWindowsAutomatically(true);
webView.loadUrl("file:///android_asset/index.html");
buttonLeft.setOnClickListener(new View.OnClickListener() {
@Override
public void onClick(View view) {
webView.post(new Runnable() {
@Override
public void run() {
webView.evaluateJavascript("javascript:callJS()", new ValueCallback() {
@Override
public void onReceiveValue(String s) {
//将button显示的文字改成JS返回的字符串
buttonLeft.setText(s);
}
});
}
});
}
});
webView.setWebChromeClient(new WebChromeClient() {
@Override
public boolean onJsAlert(WebView view, String url, String message, final JsResult result) {
AlertDialog.Builder b = new AlertDialog.Builder(MainActivity.this);
b.setTitle("alert1");
b.setMessage(message);
b.setPositiveButton(android.R.string.ok, new DialogInterface.OnClickListener() {
@Override
public void onClick(DialogInterface dialogInterface, int i) {
result.confirm();
}
});
b.setCancelable(false);
b.create().show();
return true;
}
});
}
}
android evaluater_android通过WebView的evaluateJavascript()调用JS相关推荐
- android通过WebView的evaluateJavascript()调用JS
因为该方法的执行不会使页面刷新,而方法(loadUrl )的执行则会使页面刷新. Android 4.4 后才可使用 同:https://www.cnblogs.com/liuyj-vv/p/9583 ...
- js调用android代码怎么写,Android端使用WebView注入一段js代码实现js调用android
需求:为网页上个链接增加点击事件,但是这个链接无法增加js代码 url:http://public.rongcloud.cn/view/D4F444BE2D94D760329F3CF38B4AE35C ...
- android java 调用js,Android中Java和JavaScript交互实例
Android提供了一个很强大的WebView控件用来处理Web网页,而在网页中,JavaScript又是一个很举足轻重的脚本.本文将介绍如何实现Java代码和Javascript代码的相互调用. 如 ...
- Android开发-WebView中实现Android调用JS JS调用Android 【三】
老早之前就想总结下Webview相关的知识点了,因为互联网大潮中,很多APP都会使用到Webview,像那些不计其数的电商APP,无一例外的使用Webview:或者一些非电商APP中的像广告页面,注册 ...
- android封装全局调用的toast_【Android】Android中WebView实现Java与JS交互
现在混合式开发是大趋势,H5不断蚕食移动互联网的份额,有的公司甚至只用H5就搞了一个APP,我们搞Android的不说会点H5,至少要懂怎么和H5(和JavaScript)交互,费话不多说. 一.先看 ...
- Android WebView 调用JS方法获取返回值
一.Android4.4+ 如果你项目的minSdkVersion 为4.4 以上,那么你可以直接通过WebView的evaluateJavascript()方法 拿到JS方法的返回值 webview ...
- Android开发之Webview中原生与JS交互
文章目录 概述 使用场景 交互方式 Java调用JS代码 JS调用Java代码 总结 概述 由于手机硬件资源的快速提升,使得采用混合开发的可能性逐渐成为现实并且流行起来.Android开发中最为简单的 ...
- Android webview和HTML的JS交互
1.webView加载页面 我们都知道在Android中是通过webView来加载html页面的,根据HTML文件所在的位置不同写法也不同: //例如:加载assets文件夹下的test.html页面 ...
- [转]JS调用Android里面的方法,Android调用JS里面的方法
FROM : http://blog.csdn.net/hj563308597/article/details/45197709 Android WebView 在公司Android的开发过程中遇到一 ...
最新文章
- (LeetCode 153)Find Minimum in Rotated Sorted Array
- 2021年新高考八省联考成绩查询福建,2021福建八省联考成绩查询时间
- 工作流调度系统介绍,常见工作流调度系统对比,azkaban与Oozie对比,Azkaban介绍与特性(来自学习笔记)
- LINUX中常用操作命令
- python当用户输入的不是整数_当用户输入字符串而不是整数时,如何保护我的python代码?...
- Linux学习之后台运行进程
- Spark的新方案UnifiedMemoryManager内存管理模型分析
- 叫板抖音,运营商入局短视频
- Github Coding Developer Book For LiuGuiLinAndroid
- windows主题Mac OS 风格 BigSur主题美化
- 雷锋实验室:Evernote的中国门徒
- 遇到了javah无法访问类的问题
- 30分钟读懂Linux五大模块内核源码,内核整体架构设计
- 【码农学编曲】吉他伴奏
- MySQL 8.0 物理备份xtrabackup简介
- 驻极体式MIC电路设计
- 自媒体必做的一个平台
- 防止前端重复提交表单
- [作业] 六角填数问题
- Java基础题(错题小结)
热门文章
- 用终端访问路由器设置端口开发_Serial for Mac(全功能串行终端管理软件)
- 推荐业务多目标建模算法介绍:MMOE、OMOE、Shared-Bottom
- github关联域名,创建个人网站教程终结篇
- “分库分表 ?选型和流程要慎重,否则会失控
- spring源码分析之freemarker整合
- 深入探讨 java.lang.ref 包--转
- Linux服务器集群系统(一)--转
- 产品分析报告|读书新贵——《网易蜗牛读书》
- 以太坊钱包1-Android-创建钱包
- 一流投资人会关注什么样的区块链初创公司?