WebKit 上的JS直接使用Java Bean

简介: 引用:http://www.oschina.net/code/snippet_97818_4400 [代码] java bean代码 01 public class Bean{ 02     private String title; ...

引用:http://www.oschina.net/code/snippet_97818_4400

[代码] java bean代码

01 public class Bean{
02     private String title;
03  
04     public void setTitle(String title){
05         this.title = title;
06     }
07  
08     public String getTitle(){
09         return this.title;
10     }
11 }

[代码] android端

01 package com.xu81.tw4a;
02  
03 import java.util.List;
04  
05 import android.app.Activity;
06 import android.webkit.WebChromeClient;
07 import android.webkit.WebSettings;
08 import android.webkit.WebView;
09  
10 public class TiddlyWiki4Android extends Activity {
11  
12     private WebView mainWebView;
13  
14     /** Called when the activity is first created. */
15     @Override
16     public void onCreate(Bundle savedInstanceState) {
17         super.onCreate(savedInstanceState);
18         setContentView(R.layout.main);
19                  
20                 //webview对象
21         mainWebView = (WebView) findViewById(R.id.mainWebView);
22  
23         WebSettings setting = mainWebView.getSettings();
24         setting.setJavaScriptEnabled(true);//允许javascript
25         mainWebView.setWebChromeClient(new WebChromeClient());//初始化WebChromeClient对象
26                 Bean b = new Bean();
27                 b.setTitle("title");
28         mainWebView.addJavascriptInterface(b, "bean");//添加javascript对象
29         mainWebView.loadUrl("file:///android_asset/test.html");//加载本地html页面
30     }
31 }

[代码] javascript端调用方式

1 function getDefault(){
2     var bean = window.bean;
3     var title = bean.getTitle();
4         alert(title);
5 }

[图片] screen.png

img_bdf6c9d86c561ac5fd3f9354dac7e9e6.png
相关文章
|
1月前
|
缓存 JavaScript 前端开发
Java 如何确保 JS 不被缓存
【10月更文挑战第19天】在 Java 中,可以通过设置 HTTP 响应头来确保 JavaScript 文件不被浏览器缓存。方法包括:1. 使用 Servlet 设置响应头,通过 `doGet` 方法设置 `Expires`、`Cache-Control` 和 `Pragma` 头;2. 在 Spring Boot 中配置拦截器,通过 `NoCacheInterceptor` 类和 `WebConfig` 配置类实现相同功能。这两种方法都能确保每次请求都能获取到最新的 JavaScript 内容。
|
28天前
|
开发框架 JavaScript 前端开发
HarmonyOS UI开发:掌握ArkUI(包括Java UI和JS UI)进行界面开发
【10月更文挑战第22天】随着科技发展,操作系统呈现多元化趋势。华为推出的HarmonyOS以其全场景、多设备特性备受关注。本文介绍HarmonyOS的UI开发框架ArkUI,探讨Java UI和JS UI两种开发方式。Java UI适合复杂界面开发,性能较高;JS UI适合快速开发简单界面,跨平台性好。掌握ArkUI可高效打造符合用户需求的界面。
87 8
|
1月前
|
缓存 JavaScript 前端开发
Java 如何确保 JS 不被缓存
大家好,我是 V 哥。本文探讨了 Java 后端确保 JavaScript 不被缓存的问题,分析了文件更新后无法生效、前后端不一致、影响调试与开发及安全问题等场景,并提供了使用版本号、设置 HTTP 响应头、配置静态资源缓存策略和使用 ETag 等解决方案。最后讨论了缓存的合理使用及其平衡方法。
|
1月前
|
JavaScript Java
Java 控制台VUE.JS的使用
Java 控制台VUE.JS的使用
19 0
|
3月前
|
移动开发 JavaScript 前端开发
专为webkit内核而生的javascript库mango正式发布
专为webkit内核而生的javascript库mango正式发布
|
3月前
|
Java Spring 容器
Java SpringBoot 中,动态执行 bean 对象中的方法
Java SpringBoot 中,动态执行 bean 对象中的方法
41 0
|
3月前
|
Java Spring
Java SpringBoot Bean InitializingBean 项目初始化
Java SpringBoot Bean InitializingBean 项目初始化
55 0
|
4月前
|
存储 前端开发 Java
Java中的不同Bean作用域
【7月更文挑战第5天】
59 0
Java中的不同Bean作用域
|
5月前
|
JavaScript 前端开发 Java
java 执行 javascript 代码
java 执行 javascript 代码
36 6
|
5月前
|
Java 持续交付 Maven
Java报错:Missing ServletWebServerFactory bean,如何解决
Java开发中遇到`Missing ServletWebServerFactory bean`错误?该问题可能由依赖冲突、配置问题或环境不一致引起。解决方法包括:检查依赖版本一致性、修复配置错误、确保环境匹配,以及查看IDE中的JRE配置。预防这类问题,可采用版本管理工具、CI/CD流程、代码审查和社区学习。木头左提醒,记得点赞和分享,下次见!
Java报错:Missing ServletWebServerFactory bean,如何解决
下一篇
无影云桌面