js与android webview交互

0x01 js调用java代码

android webview中支持通过添加js接口

webview.addJavascriptInterface(new JsInteration(), "control");

参数说明:

第一个:java对象对应这个WebView的JavaScript上下文

第二个:调用java对象的js中引用对象

Parameters:  1 object the Java object to inject into this WebView's JavaScript context. Null values are ignored.  2 name the name used to expose the object in JavaScript

0x02 java调用js代码

 构造一个可执行的js脚本字符串

 webview.loadurl("js脚本");

0x03 关于type="file" input控件在android平台上没触发文件选择事件,android系统屏蔽其消息,需要设置

id_webview.setWebChromeClient(new WebChromeClient() {

			// For Android 3.0+
			public void openFileChooser(ValueCallback<Uri> uploadMsg,
					String acceptType) {
				mUploadMessage = uploadMsg;
				Intent i = new Intent(Intent.ACTION_GET_CONTENT);
				i.addCategory(Intent.CATEGORY_OPENABLE);
				i.setType("image/*");
				XQSInspectionActivity.this.startActivityForResult(
						Intent.createChooser(i, "ÎļþÑ¡Ôñ"),
						XQSInspectionActivity.FILECHOOSER_RESULTCODE);
			}

			// For Android < 3.0
			@SuppressWarnings("unused")
			public void openFileChooser(ValueCallback<Uri> uploadMsg) {
				openFileChooser(uploadMsg, "");
			}

			// For Android > 4.1
			@SuppressWarnings("unused")
			public void openFileChooser(ValueCallback<Uri> uploadMsg,
					String acceptType, String capture) {
				openFileChooser(uploadMsg, "");
			}
		});

本文参与腾讯云自媒体分享计划,欢迎正在阅读的你也加入,一起分享。

发表于

我来说两句

0 条评论
登录 后参与评论

相关文章

来自专栏运维技术迷

Python:ip地址处理模块

安装 1.先下载源码,地址:https://pypi.python.org/pypi/IPy/,然后解压后使用命令python setup.py install...

509100
来自专栏码匠的流水账

聊聊spring cloud的RequestHeaderToRequestUriGatewayFilter

本文主要研究一下spring cloud的RequestHeaderToRequestUriGatewayFilter

12210
来自专栏于晓飞的专栏

Android开发从GC root分析内存泄漏

我们常说的垃圾回收机制中会提到GC Roots这个词,也就是Java虚拟机中所有引用的根对象。我们都知道,垃圾回收器不会回收GC Roots以及那些被它们间接引...

30820
来自专栏大内老A

ASP.NET MVC的View是如何被呈现出来的?[设计篇]

在前面的四篇文章中,我们介绍了各种ActionResult以及相关的请求响应机制,但是与“View的呈现”相关的ActionResult是ViewResult。...

37680
来自专栏程序员互动联盟

【专业技术】OPENGL与EGL

什么是OpenGL ES OpenGL ES是一套适用于手持嵌入式设备的3DAPI。比如手机、PDA、汽车、航空等等上面都可以使用到OpenGL ES。Ope...

70180
来自专栏Android随笔

LeakCanary笔记

RefWatcher 的代理类。通过注册 ActivityLifecycleCallbacks 回调,当 Activity 调用 onDestroy() 时进行...

9920
来自专栏DannyHoo的专栏

利用runtime进行归档解档

版权声明:本文为博主原创文章,未经博主允许不得转载。 https://blog.csdn.net/u010105969/article/details/...

10220
来自专栏java工会

Spring Bean的生命周期管理

14640
来自专栏郭霖

Android图片加载框架最全解析(二),从源码的角度理解Glide的执行流程

在本系列的上一篇文章中,我们学习了Glide的基本用法,体验了这个图片加载框架的强大功能,以及它非常简便的API。还没有看过上一篇文章的朋友,建议先去阅读 An...

734100
来自专栏向治洪

ormlite介绍一

概述 ORMlite是类似hibernate的对象映射框架,主要面向java语言,同时,是时下最流行的android面向数据库的的编程工具。 官方网站:http...

22160

扫码关注云+社区

领取腾讯云代金券