android js 互调
public class BoatsActivity extends Activity {
Handler mHandler = new Handler();//处理消息的handler
@SuppressLint("SetJavaScriptEnabled")
protected void onCreate(Bundle savedInstanceState) {
super.onCreate(savedInstanceState);
this.setTitle("船舶查询页面");
final WebView mWebView = new WebView(this);//创建一个webView对象出来 将他作为activity的显示页面 你也可以在xml布局文件中放入一个webView控件在这里初始化
setContentView(mWebView);
mWebView.loadUrl("http://192.168.0.190:8080/loginDemo_gd/bots.html");//加载你要显示的网页
mWebView.getSettings().setJavaScriptEnabled(true);//获取webview对象中的setting对象 设置为可以支持javascript
mWebView.addJavascriptInterface(new Object() {
@JavascriptInterface//sdk版本大于17要加上这句注解 访问安全考虑
public void clickOnAndroid() {
mHandler.post(new Runnable() {
public void run() {
Toast.makeText(BoatsActivity.this, "请输入你要查询的船舶", Toast.LENGTH_SHORT).show();
}
});
}
@JavascriptInterface
public void showmsg(){
mHandler.post(new Runnable() {
public void run() {
Toast.makeText(BoatsActivity.this, "查询成功", Toast.LENGTH_SHORT).show();
}
});
}
@JavascriptInterface
public void showResult(){
mHandler.post(new Runnable() {
public void run() {
Toast.makeText(BoatsActivity.this, "没有查询到对应的数据", Toast.LENGTH_SHORT).show();
}
});
}
@JavascriptInterface
public void alert(){
mHandler.post(new Runnable() {
public void run() {
Toast.makeText(BoatsActivity.this, "请输入船舶的ID", Toast.LENGTH_SHORT).show();
}
});
} }, "demo");//类的别名 js这样调用 window.demo.方法名(js调用java方法)
//java调用js
webView.loadUrl("javascript:window.handler.show(document.getElementById('id').value,document.getElementById('password').value)");
mWebView.setWebViewClient(new WebViewClient(){
@Override
public void onPageFinished(WebView view, String url) {
//Toast.makeText(BoatsActivity.this, "加载完成", Toast.LENGTH_SHORT).show();
super.onPageFinished(view, url);
}
});
} }
android js 互调的更多相关文章
- Android-----js和android的互调
Android-----js和android的互调 http://code.google.com/p/apps-for-android/source/browse/trunk/Samples/We ...
- ActionScript 3.0入门:Hello World、文件读写、数据存储(SharedObject)、与JS互调
近期项目中可能要用到Flash存取数据,并与JS互调,所以就看了一下ActionScript 3.0,现把学习结果分享一下,希望对新手有帮助. 目录 ActionScript 3.0简介 Hello ...
- Atitit.android js 的键盘按键检测Back键Home键和Menu键事件
Atitit.android js 的键盘按键检测Back键Home键和Menu键事件 1. onKeyDown @Override public boolean onKeyDown(int keyC ...
- [转]ActionScript 3.0入门:Hello World、文件读写、数据存储(SharedObject)、与JS互调
本文转自:http://www.cnblogs.com/artwl/p/3396330.html 近期项目中可能要用到Flash存取数据,并与JS互调,所以就看了一下ActionScript 3.0, ...
- C#和网页js互调代码
C#和网页js互调代码 1.先写个网页放在主程序目录下:test.html <!DOCTYPE html> <html lang="en" xmlns=" ...
- android ReactNative之Cannot find entry file index.android.js in any of the roots
android ReactNative之Cannot find entry file index.android.js in any of the roots 2018年04月02日 14:53:12 ...
- android js 互相调用
代码地址如下:http://www.demodashi.com/demo/13107.html android js 互相调用 第二版 支持js匿名函数接收 支持js json对象接收 支持js函数返 ...
- Android和jS互调技术Demo实现
package com.loaderman.webviewdemo; import android.os.Bundle; import android.support.v7.app.AppCompat ...
- Javascript和android原生互调
最近在做原生和js端的互调的功能,自己改了个demo,给大家讲解下. 先上js代码 <!DOCTYPE html> <html> <head> <meta c ...
随机推荐
- java的File类的 delete方法删不掉文件的原因分析
先举几个可以删除掉文件和删除不掉文件的例子(先在F盘创建test1.txt文件,然后可以直接拷贝代码到IDE执行),最后总结下原因: 例子一:下面的例子毫无疑问是能够删除掉文件的 import jav ...
- MFC程序的启动过程——先全局对象theApp(第一入口),后WinMain(真正入口),会引爆pApp->InitInstance从而创建窗口(程序员入口)
原文出自:http://blog.csdn.net/yuvmen/article/details/5877271 了解MFC程序的启动过程,对于初学者来讲,了学习MFC很有帮助:对于不常用VC的人来说 ...
- Android Training精要(一)ActionBar上级菜单导航图标
Navigation Up(ActionBar中的上级菜单导航图标) 在android 4.0中,我们需要自己维护activity之间的父子关系. 导航图标ID为android.R.id.home @ ...
- iframe的安全问题
今天尝试在iframe中嵌入外部网站, 碰到了一些小问题. 如何让自己的网站不被其他网站的iframe引用? 我测试的时候发现我把iframe的src指定到github不起作用. 原来是它把X-Fra ...
- dump datafile block
Oracle dump datafile block有两种方式: 然后根据block id执行dump 命令: SQL> alter system dump datafile 4 block 2 ...
- Codevs_1048_石子归并_(动态规划)
描述 http://codevs.cn/problem/1048/ 1048 石子归并 时间限制: 1 s 空间限制: 128000 KB 题目等级 : 黄金 Gold 题目描述 Des ...
- DevExpress中XtraGrid控件对GridView每行的颜色设置 zt
改变行颜色 private void GridView1_RowStyle(object sender, DevExpress.XtraGrid.Views.Grid.RowStyleEventArg ...
- C# Read/Write another Process' Memory ZZ
Today's tutorial is about...processes' memory! In this article I'll show you how to read/write a pro ...
- Ext.MessageBox的用法
1.Ext.MessageBox.alert()方法 有四个参数:alert( title , msg , function(){} ,this) 其中title,msg为必选参数,function为 ...
- Bzoj 3173: [Tjoi2013]最长上升子序列 平衡树,Treap,二分,树的序遍历
3173: [Tjoi2013]最长上升子序列 Time Limit: 10 Sec Memory Limit: 128 MBSubmit: 1183 Solved: 610[Submit][St ...