在 android WebView 中的 java 和 javascript 之间共享对象(数据)
Sharing an object(data) between java and javascript in android WebView
我创建了一个如下所示的 WebView 活动。我无法让它工作。
public void onCreate(Bundle savedInstanceState) {
super.onCreate(savedInstanceState);
setContentView(R.layout.webview);
JAsocket socket1=new JAsocket();
webView = (WebView) findViewById(R.id.webView1);
webView.getSettings().setJavaScriptEnabled(true);
webView.addJavascriptInterface(socket1, "socket");
webView.loadUrl("file:///android_asset/index.html");
webView.getSettings().setLoadWithOverviewMode(true);
webView.getSettings().setUseWideViewPort(true);
}
我的问题是,如果我通过"socket"在javascript中调用其函数来操作"socket1"的某些成员变量,当我将相同的对象传递给javascript时,我是否可以使用socket1看到此活动中的这些变化。
谢谢。
你的问题的答案是肯定的,当然。看几个例子。
http://android-developers.blogspot.in/2008/09/using-webviews.html
http://techdroid.kbeanie.com/2010/10/android-webview-javascript-and-css.html
顺便说一下,你已经完成了一半。
相关文章:
- 在requirejs中共享实例化对象
- 在Javascript服务器/客户端中共享对象定义
- 如何创建共享某些属性的对象
- 如何将json文件中的数据提取到对象数组中,并在两个控制器之间共享
- Angular 2,在没有直接关系的两个组件之间共享一个对象
- 在angularJS中使用模态窗口时,在控制器之间共享对象数组
- 节点模块对象范围:在所有函数之间共享一个对象
- 面向对象的 JavaScript 共享方法变量
- 在Firefox中与Web内容(页面对象)共享插件对象(内容脚本)
- 如何在模块之间共享对象
- 如何将一个配置对象共享给多个数据
- 在角度控制器之间共享大对象
- 当多个对象共享同一视图模型时,如何在 kendo UI 中获取事件源
- 无法在注册为 Angular 服务的 ES6 类中共享对象
- 合并共享公共键或值的对象
- 合并在 D3 中共享公共值的对象
- 通过服务在控制器之间共享$http对象
- 如果对象使用 reduce、forEach 或筛选器共享属性值,则合并 JSON 数组中的对象
- 在 android WebView 中的 java 和 javascript 之间共享对象(数据)
- HTML5 游戏对象和共享方法