zoukankan      html  css  js  c++  java
  • 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, "");
    			}
    		});
    

      

  • 相关阅读:
    个人工作总结07
    软件项目第一个Sprint评分
    丹佛机场行李系统没能及时交工的原因
    第一次团队冲刺 5
    第一次团队冲刺4
    第一次团队冲刺3
    第一次团队冲刺2
    第一次团队冲刺 1
    风险评估
    团队开发——第一篇scrum报告
  • 原文地址:https://www.cnblogs.com/lmf-techniques/p/5736125.html
Copyright © 2011-2022 走看看